1 Vector对象的创建
在使用Vector对象时,需要导入java包:java.util.Vector。
import java.util.Vector;
Vector的创建方式如下,尖括号中可以填写任何的类名(如果想使用基本数据类型,需要填入对应的包装类),该类便是Vector对象中各个元素的类型。
Vector<Integer> v = new Vector<Integer>(); //整型向量 Vector<Double> v = new Vector<Double>(); //双精浮点型向量
2 向Vector对象添加元素
可以使用add与addElement函数来添加元素,两者在使用上没有太大的区别。add的返回值是boolean类型,addElement的返回值是void类型。
Vector<Integer> v = new Vector<Integer>(); v.add(3); //add的返回值是boolean类型 v.add(5); v.add(8); v.addElement(10); //addElement的返回值是void类型 for(int e:v)System.out.print(e+" "); //遍历数组元素,输出: 3 5 8 10
3 读取和修改Vector中的元素
get:根据下标读取元素
set:根据下标修改元素
Vector<Integer> v = new Vector<Integer>(); v.add(3); v.add(5); v.add(8); v.add(10); for(int e:v)System.out.println(e); //输出: 3 5 8 10 System.out.println(v.get(2)); //v.get(2)为读取v中的第2个元素,因此输出:8 v.set(0,100); //修改第0个元素为100 v.set(3,200); //修改第3个元素为200 for(int e:v)System.out.println(e); //输出: 100 5 8 200
4 移除Vector中的元素
remove:根据下标移除元素
clear:移除所有元素
Vector<Integer> v = new Vector<Integer>(); v.add(3); v.add(5); v.add(8); v.add(10); v.remove(1); //移除第1个元素"5" for(int e:v)System.out.print(e + " "); //输出: 3 8 10 v.clear(); System.out.println("向量v的长度为" + v.size());//size()返回向量的长度,输出: 向量v的长度为0
5 遍历Vector中的元素
・下标遍历
Vector<Integer> v = new Vector<Integer>(); v.add(3); v.add(5); v.add(8); v.add(10); for(int i = 0 ;i<v.size();i++)System.out.print(v.get(i) + " ");//使用下标遍历,输出: 3 5 8 10
・foreach遍历
以上例子多次使用的就是这种方式
Vector<Integer> v = new Vector<Integer>(); v.add(3); v.add(5); v.add(8); v.add(10); for(int e:v)System.out.print(e + " ");//使用foreach风格遍历,输出: 3 5 8 10
・迭代器遍历
由于需要使用Iterator对像,所以需要导入下面的包
import java.util.Iterator;
Vector<Integer> v = new Vector<Integer>(); v.add(3); v.add(5); v.add(8); v.add(10); Iterator iterator = v.iterator(); while (iterator.hasNext()) { System.out.println(iterator.next());//输出: 3 5 8 10
}
6 查询搜索
contains与isEmpty函数
Vector<Integer> v = new Vector<Integer>(); v.add(3); v.add(5); v.add(8); v.add(10); System.out.println(v.contains(8));//因为向量v元素里包含"8",所以输出:true System.out.println(v.contains(7));//因为向量v元素里不包含"7",所以输出:false System.out.println(v.isEmpty());//因为向量v里元素个数不为0,所以输出:false Vector<Integer> v1 = new Vector<Integer>(); System.out.println(v1.isEmpty());//因为向量v1里没有元素,所以输出:true
indexOf:从向量头(或指定下标)开始搜索,返回所遇到的第一个对象对应的下标,若不存在此对象,返回-1.
lastindexOf:从向量尾部(或指定下标)开始逆向搜索对象. 返回所遇到的第一个对象对应的下标,若不存在此对象,返回-1.
Vector<Integer> v = new Vector<Integer>(); v.add(3); v.add(5); v.add(8); v.add(5); v.add(10); System.out.println(v.indexOf(5));//第一个"5"的下标为1,所以输出: 1 System.out.println(v.indexOf(5,2));//从第2个元素开始搜索"5",所以输出: 3 System.out.println(v.lastIndexOf(5));//从尾部开始逆向搜索"5",所以输出: 3 System.out.println(v.lastIndexOf(5,2));//从第2个元素开始逆向搜索"5",所以输出: 1