001 package ifs.util;
002
003 import java.util.*;
004
005 /** Vector extension with faster enumeration.
006 * In {@link FastVector#elements()}, no unnecessary check is made.
007 *
008 * @author <a href="mailto:muller@ktiml.mff.cuni.cz">Tomáš Müller</a>
009 * @version 1.0
010 */
011
012 public class FastVector extends Vector {
013
014 public FastVector() {
015 super();
016 }
017 public FastVector(int initialCapacity) {
018 super(initialCapacity);
019 }
020 public FastVector(int initialCapacity, int capacityIncrement) {
021 super(initialCapacity, capacityIncrement);
022 }
023 public FastVector(Collection c) {
024 super(c);
025 }
026
027 public Enumeration elements() {
028 return new Enumeration() {
029 int count = 0;
030 public boolean hasMoreElements() { return count < elementCount; }
031 public Object nextElement() { return elementData[count++]; }
032 };
033 }
034
035 public String toString() {
036 return size()+"/"+super.toString();
037 }
038 }