Java矢量队列Vector使用示例
Java中的Vector是一个可调整大小的数组实现,与ArrayList类似,但是可以支持同步。在需要线程安全时,可以使用Vector代替ArrayList。
Vector的创建
使用Vector需要先导入Java.util.Vector类,然后可以使用以下代码创建一个Vector:
Vector<Object> vector = new Vector<Object>();
Vector的构造函数也支持指定初始容量和增量。例如,以下代码创建了一个初始容量为10,增量为2的Vector对象:
Vector<Object> vector = new Vector<Object>(10, 2);
Vector的常用方法
以下是Vector的常用方法:
添加元素
public boolean add(Object element)
public void add(int index, Object element)
删除元素
public synchronized boolean remove(Object element)
public synchronized Object remove(int index)
获取元素
public synchronized Object get(int index)
获取大小和容量
public int size()
public int capacity()
示例一:使用Vector存储数据
以下是一个使用Vector存储学生数据的示例:
import java.util.Vector;
public class Student {
private String name;
private int age;
public Student(String name, int age) {
this.name = name;
this.age = age;
}
public String toString() {
return "Name: " + name + ", Age: " + age;
}
public static void main(String[] args) {
Vector<Student> students = new Vector<Student>();
students.add(new Student("John", 20));
students.add(new Student("Mary", 18));
students.add(new Student("Mike", 22));
for(Student student : students) {
System.out.println(student);
}
}
}
输出结果为:
Name: John, Age: 20
Name: Mary, Age: 18
Name: Mike, Age: 22
示例二:使用Vector支持多线程
以下示例演示如何在多线程环境下使用Vector:
import java.util.Vector;
public class ThreadSafe {
public static void main(String[] args) {
Vector<Integer> vector = new Vector<Integer>();
for(int i = 0; i < 5; i++) {
Thread thread = new Thread(new Runnable() {
@Override
public void run() {
for(int j = 0; j < 1000; j++) {
vector.add(j);
}
}
});
thread.start();
}
//等待所有线程结束
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("Vector size is: " + vector.size());
}
}
输出结果为:
Vector size is: 5000
Vector保证了多个线程同时访问时的同步性,因此上述示例中的vector.add(j)
操作是线程安全的。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Java矢量队列Vector使用示例 - Python技术站