Java 教程
- Java - 首页
- Java - 概述
- Java - 历史
- Java - 特性
- Java vs. C++
- JVM - Java 虚拟机
- Java - JDK 与 JRE 与 JVM
- Java - Hello World 程序
- Java - 环境设置
- Java - 基本语法
- Java - 变量类型
- Java - 数据类型
- Java - 类型转换
- Java - Unicode 系统
- Java - 基本运算符
- Java - 注释
- Java - 用户输入
- Java - 日期和时间
Java 控制语句
- Java - 循环控制
- Java - 决策机制
- Java - if-else
- Java - switch
- Java - for 循环
- Java - for-each 循环
- Java - while 循环
- Java - do-while 循环
- Java - break
- Java - continue
面向对象编程
- Java - OOPs 概念
- Java - 对象和类
- Java - 类属性
- Java - 类方法
- Java - 方法
- Java - 变量作用域
- Java - 构造函数
- Java - 访问修饰符
- Java - 继承
- Java - 聚合
- Java - 多态
- Java - 重写
- Java - 方法重载
- Java - 动态绑定
- Java - 静态绑定
- Java - 实例初始化块
- Java - 抽象
- Java - 封装
- Java - 接口
- Java - 包
- Java - 内部类
- Java - 静态类
- Java - 匿名类
- Java - 单例类
- Java - 包装类
- Java - 枚举
- Java - 枚举构造函数
- Java - 枚举字符串
Java 内置类
Java 文件处理
Java 错误和异常
- Java - 异常
- Java - try-catch 块
- Java - try-with-resources
- Java - 多重 catch 块
- Java - 嵌套 try 块
- Java - finally 块
- Java - throw 异常
- Java - 异常传播
- Java - 内置异常
- Java - 自定义异常
Java 多线程
- Java - 多线程
- Java - 线程生命周期
- Java - 创建线程
- Java - 启动线程
- Java - 线程连接
- Java - 线程命名
- Java - 线程调度器
- Java - 线程池
- Java - 主线程
- Java - 线程优先级
- Java - 守护线程
- Java - 线程组
- Java - 关闭钩子
Java 同步
Java 网络编程
- Java - 网络编程
- Java - Socket 编程
- Java - URL 处理
- Java - URL 类
- Java - URLConnection 类
- Java - HttpURLConnection 类
- Java - Socket 类
- Java -泛型
Java 集合
Java 接口
Java 数据结构
Java 集合算法
高级 Java
- Java - 命令行参数
- Java - Lambda 表达式
- Java - 发送邮件
- Java - Applet 基础
- Java - Javadoc 注释
- Java - 自动装箱和拆箱
- Java - 文件不匹配方法
- Java - REPL (JShell)
- Java - 多版本 Jar 文件
- Java - 私有接口方法
- Java - 内部类菱形运算符
- Java - 多分辨率图像 API
- Java - 集合工厂方法
- Java - 模块系统
- Java - Nashorn JavaScript
- Java - Optional 类
- Java - 方法引用
- Java - 函数式接口
- Java - 默认方法
- Java - Base64 编码解码
- Java - switch 表达式
- Java - Teeing 收集器
- Java - 微基准测试
- Java - 文本块
- Java - 动态 CDS 存档
- Java - Z 垃圾收集器 (ZGC)
- Java - 空指针异常
- Java - 打包工具
- Java - 密封类
- Java - 记录类
- Java - 隐藏类
- Java - 模式匹配
- Java - 简洁的数字格式化
- Java - 垃圾回收
- Java - JIT 编译器
Java 杂项
- Java - 递归
- Java - 正则表达式
- Java - 序列化
- Java - 字符串
- Java - Process API 改进
- Java - Stream API 改进
- Java - 增强的 @Deprecated 注解
- Java - CompletableFuture API 改进
- Java - 流
- Java - 日期时间 API
- Java 8 - 新特性
- Java 9 - 新特性
- Java 10 - 新特性
- Java 11 - 新特性
- Java 12 - 新特性
- Java 13 - 新特性
- Java 14 - 新特性
- Java 15 - 新特性
- Java 16 - 新特性
Java API 和框架
Java 类引用
- Java - Scanner
- Java - 数组
- Java - 字符串
- Java - Date
- Java - ArrayList
- Java - Vector
- Java - Stack
- Java - PriorityQueue
- Java - LinkedList
- Java - ArrayDeque
- Java - HashMap
- Java - LinkedHashMap
- Java - WeakHashMap
- Java - EnumMap
- Java - TreeMap
- Java - IdentityHashMap
- Java - HashSet
- Java - EnumSet
- Java - LinkedHashSet
- Java - TreeSet
- Java - BitSet
- Java - Dictionary
- Java - Hashtable
- Java - Properties
- Java - Collection
- Java - Array
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