(了解)
-
public class Vector<E>
extends AbstractList<E>
implements List<E>, RandomAccess, Cloneable, SerializableVector类实现了可扩展的对象数组。像数组一样,它包含可以使用整数索引访问的组件。但是,Vector的大小可以根据需要增长或缩小,以适应在创建Vector之后添加和删除项目。每个向量尝试通过维护
capacity和capacityIncrement优化存储capacityIncrement。capacity总是至少与矢量大小一样大; 通常较大,因为当向量中添加组分时,向量的存储空间大小capacityIncrement。 应用程序可以在插入大量组件之前增加向量的容量; 这减少了增量重新分配的数量。The iterators returned by this class's个
iterator和listIterator方法是快速失败的 :如果向量在任何时间从结构上修改创建迭代器之后,以任何方式除非通过迭代器自身remove种或add方法,迭代器都将抛出一个ConcurrentModificationException。 因此,面对并发修改,迭代器将快速而干净地失败,而不是在未来未确定的时间冒着任意的非确定性行为。 由elements返回的Enumerations不是故障快速的。请注意,迭代器的故障快速行为无法保证,因为一般来说,在不同步并发修改的情况下,无法做出任何硬性保证。 失败快速迭代器尽力投入
ConcurrentModificationException。 因此,编写依赖于此异常的程序的正确性将是错误的:迭代器的故障快速行为应仅用于检测错误。从Java 2平台v1.2,这个类被改造为实现
List接口,使其成为成员Java Collections Framework 。 与新集合实现不同,Vector是同步的。 如果不需要线程安全的实现,建议使用ArrayList代替Vector。
-
-
booleanadd(E e)将指定的元素追加到此Vector的末尾。voidadd(int index, E element)在此Vector中的指定位置插入指定的元素。booleanaddAll(Collection c)将指定集合中的所有元素追加到该向量的末尾,按照它们由指定集合的迭代器返回的顺序。booleanaddAll(int index, Collection c)将指定集合中的所有元素插入到此向量中的指定位置。voidaddElement(E obj)将指定的组件添加到此向量的末尾,将其大小增加1。intcapacity()返回此向量的当前容量。voidclear()从此Vector中删除所有元素。Objectclone()返回此向量的克隆。booleancontains(Object o)如果此向量包含指定的元素,则返回true。booleancontainsAll(Collection c)如果此向量包含指定集合中的所有元素,则返回true。voidcopyInto(Object[] anArray)将此向量的组件复制到指定的数组中。EelementAt(int index)返回指定索引处的组件。Enumerationelements()返回此向量的组件的枚举。voidensureCapacity(int minCapacity)如果需要,增加此向量的容量,以确保它可以至少保存最小容量参数指定的组件数。booleanequals(Object o)将指定的对象与此向量进行比较以获得相等性。EfirstElement()返回此向量的第一个组件(索引号为0的项目)。voidforEach(Consumer action)对Iterable的每个元素执行给定的操作,直到所有元素都被处理或动作引发异常。Eget(int index)返回此向量中指定位置的元素。inthashCode()返回此Vector的哈希码值。intindexOf(Object o)返回此向量中指定元素的第一次出现的索引,如果此向量不包含元素,则返回-1。intindexOf(Object o, int index)返回此向量中指定元素的第一次出现的索引,从index向前index,如果未找到该元素,则返回-1。voidinsertElementAt(E obj, int index)在指定的index插入指定对象作为该向量中的一个index。booleanisEmpty()测试此矢量是否没有组件。Iteratoriterator()以正确的顺序返回该列表中的元素的迭代器。ElastElement()返回向量的最后一个组件。intlastIndexOf(Object o)返回此向量中指定元素的最后一次出现的索引,如果此向量不包含元素,则返回-1。intlastIndexOf(Object o, int index)返回此向量中指定元素的最后一次出现的索引,从index,如果未找到元素,则返回-1。ListIteratorlistIterator()返回列表中的列表迭代器(按适当的顺序)。ListIteratorlistIterator(int index)从列表中的指定位置开始,返回列表中的元素(按正确顺序)的列表迭代器。Eremove(int index)删除此向量中指定位置的元素。booleanremove(Object o)删除此向量中指定元素的第一个出现如果Vector不包含元素,则它不会更改。booleanremoveAll(Collection c)从此Vector中删除指定集合中包含的所有元素。voidremoveAllElements()从该向量中删除所有组件,并将其大小设置为零。booleanremoveElement(Object obj)从此向量中删除参数的第一个(最低索引)出现次数。voidremoveElementAt(int index)删除指定索引处的组件。booleanremoveIf(Predicate filter)删除满足给定谓词的此集合的所有元素。protected voidremoveRange(int fromIndex, int toIndex)从此列表中删除所有索引为fromIndex(含)和toIndex之间的元素。voidreplaceAll(UnaryOperator operator)将该列表的每个元素替换为将该运算符应用于该元素的结果。booleanretainAll(Collection c)仅保留此向量中包含在指定集合中的元素。Eset(int index, E element)用指定的元素替换此Vector中指定位置的元素。voidsetElementAt(E obj, int index)设置在指定的组件index此向量的要指定的对象。voidsetSize(int newSize)设置此向量的大小。intsize()返回此向量中的组件数。voidsort(Comparator c)使用提供的Comparator对此列表进行排序以比较元素。Spliteratorspliterator()在此列表中的元素上创建late-binding和故障切换Spliterator。ListsubList(int fromIndex, int toIndex)返回此列表之间的fromIndex(包括)和toIndex之间的独占视图。Object[]toArray()以正确的顺序返回一个包含此Vector中所有元素的数组。T[]toArray(T[] a)以正确的顺序返回一个包含此Vector中所有元素的数组; 返回的数组的运行时类型是指定数组的运行时类型。StringtoString()返回此Vector的字符串表示形式,其中包含每个元素的String表示形式。voidtrimToSize()
-