Code/Resource
Windows Develop
Linux-Unix program
Internet-Socket-Network
Web Server
Browser Client
Ftp Server
Ftp Client
Browser Plugins
Proxy Server
Email Server
Email Client
WEB Mail
Firewall-Security
Telnet Server
Telnet Client
ICQ-IM-Chat
Search Engine
Sniffer Package capture
Remote Control
xml-soap-webservice
P2P
WEB(ASP,PHP,...)
TCP/IP Stack
SNMP
Grid Computing
SilverLight
DNS
Cluster Service
Network Security
Communication-Mobile
Game Program
Editor
Multimedia program
Graph program
Compiler program
Compress-Decompress algrithms
Crypt_Decrypt algrithms
Mathimatics-Numerical algorithms
MultiLanguage
Disk/Storage
Java Develop
assembly language
Applications
Other systems
Database system
Embeded-SCM Develop
FlashMX/Flex
source in ebook
Delphi VCL
OS Develop
MiddleWare
MPI
MacOS develop
LabView
ELanguage
Software/Tools
E-Books
Artical/Document
IndexedVector.java
Package: antlr-2_7_0.zip [view]
Upload User: afrynkmhm
Upload Date: 2007-01-06
Package Size: 1262k
Code Size: 2k
Category:
Compiler program
Development Platform:
Others
- package antlr.collections.impl;
- /* ANTLR Translator Generator
- * Project led by Terence Parr at http://www.jGuru.com
- * Software rights: http://www.antlr.org/RIGHTS.html
- *
- * $Id: //depot/code/org.antlr/release/antlr-2.7.0/antlr/collections/impl/IndexedVector.java#1 $
- */
- import java.util.Hashtable;
- import java.util.Enumeration;
- import antlr.collections.impl.Vector;
- /**
- * A simple indexed vector: a normal vector except that you must
- * specify a key when adding an element. This allows fast lookup
- * and allows the order of specification to be preserved.
- */
- public class IndexedVector {
- protected Vector elements;
- protected Hashtable index;
- /**
- * IndexedVector constructor comment.
- */
- public IndexedVector() {
- elements = new Vector(10);
- index = new Hashtable(10);
- }
- /**
- * IndexedVector constructor comment.
- * @param size int
- */
- public IndexedVector(int size) {
- elements = new Vector(size);
- index = new Hashtable(size);
- }
- public synchronized void appendElement(Object key, Object value) {
- elements.appendElement(value);
- index.put(key, value);
- }
- /**
- * Returns the element at the specified index.
- * @param index the index of the desired element
- * @exception ArrayIndexOutOfBoundsException If an invalid
- * index was given.
- */
- public Object elementAt(int i) {
- return elements.elementAt(i);
- }
- public Enumeration elements() {
- return elements.elements();
- }
- public Object getElement(Object key) {
- Object o = index.get(key);
- return o;
- }
- /** remove element referred to by key NOT value; return false if not found. */
- public synchronized boolean removeElement(Object key) {
- Object value = index.get(key);
- if ( value == null ) {
- return false;
- }
- index.remove(key);
- elements.removeElement(value);
- return false;
- }
- public int size() {
- return elements.size();
- }
- }