Java 教程

Java 控制语句

面向对象编程

Java 内置类

Java 文件处理

Java 错误和异常

Java 多线程

Java 同步

Java 网络编程

Java 集合

Java 接口

Java 数据结构

Java 集合算法

高级 Java

Java 杂项

Java API 和框架

Java 类引用

Java 有用资源

Java - Vector 类



Vector 实现动态数组。它类似于 ArrayList,但有两个区别:

  • Vector 是同步的。

  • Vector 包含许多不在集合框架中的遗留方法。

如果您事先不知道数组的大小,或者只需要一个在程序生命周期中可以更改大小的数组,Vector 将非常有用。

以下是 Vector 类提供的构造函数列表。

序号 构造函数和描述
1

Vector( )

此构造函数创建一个默认的 Vector,其初始大小为 10。

2

Vector(int size)

此构造函数接受一个等于所需大小的参数,并创建一个其初始容量由 size 指定的 Vector。

3

Vector(int size, int incr)

此构造函数创建一个 Vector,其初始容量由 size 指定,增量由 incr 指定。增量指定每次向上调整 Vector 大小时要分配的元素数量。

4

Vector(Collection c)

此构造函数创建一个包含集合 c 中元素的 Vector。

除了从其父类继承的方法外,Vector 还定义了以下方法:

序号 方法和描述
1 boolean add(E e)

此方法将指定元素附加到此 Vector 的末尾。

2 boolean addAll(Collection<? extends E> c)

此方法将指定 Collection 中的所有元素附加到此 Vector 的末尾。

3 void addElement(E obj)

此方法将指定的组件添加到此向量的末尾,使其大小增加一。

4 int capacity()

此方法返回此向量的当前容量。

5 void clear()

此方法从此向量中删除所有元素。

6 clone clone()

此方法返回此向量的克隆。

7 boolean contains(Object o)

如果此向量包含指定的元素,则此方法返回 true。

8 boolean containsAll(Collection<?> c)

如果此 Vector 包含指定 Collection 中的所有元素,则此方法返回 true。

9 void copyInto(Object[ ] anArray)

此方法将此向量的组件复制到指定的数组中。

10 E elementAt(int index)

此方法返回指定索引处的组件。

11 Enumeration<E> elements()

此方法返回此向量组件的枚举。

12 void ensureCapacity(int minCapacity)

如有必要,此方法会增加此向量的容量,以确保它至少可以容纳最小容量参数指定的组件数。

13 boolean equals(Object o)

此方法将指定的 Object 与此 Vector 进行相等性比较。

14 E firstElement()

此方法返回此向量的第一个组件(索引 0 处的项目)。

15 void forEach​(Consumer<? super E> action)

此方法对 Iterable 的每个元素执行给定的操作,直到所有元素都已处理或操作引发异常。

16 E get(int index)

此方法返回此 Vector 中指定位置处的元素。

17 int hashCode()

此方法返回此 Vector 的哈希代码值。

18 int indexOf(Object o)

此方法返回此向量中指定元素的第一次出现的索引,如果此向量不包含该元素,则返回 -1。

19 void insertElementAt(E obj, int index)

此方法将指定的 Object 作为组件插入到此向量的指定索引处。

20 boolean isEmpty()

此方法测试此向量是否没有组件。

21 Iterator<E> iterator()

此方法返回此列表中元素的迭代器(按正确的顺序)。

22 E lastElement()

此方法返回向量的最后一个组件。

23 int lastIndexOf​(Object o)

此方法返回此向量中指定元素的最后一次出现的索引,如果此向量不包含该元素,则返回 -1。

24 ListIterator<E> listIterator()

此方法返回此列表中元素的列表迭代器(按正确的顺序)。

25 E remove(int index)

此方法从此 Vector 中删除指定位置处的元素。

26 boolean removeAll(Collection<?> c)

此方法从此 Vector 中删除其所有包含在指定 Collection 中的元素。

27 void removeAllElements()

此方法从此向量中删除所有组件并将大小设置为零。

28 boolean removeElement(Object obj)

此方法从此向量中删除参数的第一次出现。

29 void removeElementAt(int index)

此方法删除指定索引处的组件。

30 boolean removeIf​(Predicate<? super E> filter)

移除此集合中满足给定谓词的所有元素。

31 boolean retainAll(Collection<?> c)

此方法仅保留此向量中包含在指定集合中的元素。

32 E set(int index, E element)

此方法将此向量中指定位置的元素替换为指定的元素。

33 void setElementAt(E obj, int index)

此方法将此向量的指定索引处的组件设置为指定的对象。

34 void setSize(int newSize)

此方法设置此向量的尺寸。

35 int size()

此方法返回此向量中组件的数量。

36 Spliterator<E&t; spliterator()

在此列表的元素上创建一个延迟绑定且快速失败的 Spliterator。

37 List <E> subList(int fromIndex, int toIndex)

此方法返回此列表中从 fromIndex(包含)到 toIndex(不包含)部分的视图。

38 object[] toArray()

此方法返回一个数组,其中包含此向量中的所有元素,并按正确的顺序排列。

39 String toString()

此方法返回此向量的字符串表示形式,其中包含每个元素的字符串表示形式。

40 void trimToSize()

此方法将此向量的容量调整为向量的当前大小。

示例

以下程序演示了此集合支持的几种方法。

import java.util.*;
public class VectorDemo {

   public static void main(String args[]) {
      // initial size is 3, increment is 2
      Vector v = new Vector(3, 2);
      System.out.println("Initial size: " + v.size());
      System.out.println("Initial capacity: " + v.capacity());
      
      v.addElement(new Integer(1));
      v.addElement(new Integer(2));
      v.addElement(new Integer(3));
      v.addElement(new Integer(4));
      System.out.println("Capacity after four additions: " + v.capacity());

      v.addElement(new Double(5.45));
      System.out.println("Current capacity: " + v.capacity());
      
      v.addElement(new Double(6.08));
      v.addElement(new Integer(7));
      System.out.println("Current capacity: " + v.capacity());
      
      v.addElement(new Float(9.4));
      v.addElement(new Integer(10));
      System.out.println("Current capacity: " + v.capacity());
      
      v.addElement(new Integer(11));
      v.addElement(new Integer(12));
      System.out.println("First element: " + (Integer)v.firstElement());
      System.out.println("Last element: " + (Integer)v.lastElement());
      
      if(v.contains(new Integer(3)))
         System.out.println("Vector contains 3.");
         
      // enumerate the elements in the vector.
      Enumeration vEnum = v.elements();
      System.out.println("\nElements in vector:");
      
      while(vEnum.hasMoreElements())
         System.out.print(vEnum.nextElement() + " ");
      System.out.println();
   }
}

这将产生以下结果:

输出

Initial size: 0
Initial capacity: 3
Capacity after four additions: 5
Current capacity: 5
Current capacity: 7
Current capacity: 9
First element: 1
Last element: 12
Vector contains 3.

Elements in vector:
1 2 3 4 5.45 6.08 7 9.4 10 11 12
java_data_structures.htm
广告