您的位置:首页 > 编程语言 > Java开发

Java学习笔记28

2015-03-07 20:04 204 查看
Vector是List接口的实现类,支持List接口的全部功能,Vector类是基于数组实现的List类,在内部封装了一个动态的、

允许再分配的Object[]数组,Vector是线程安全的,无须程序保证该集合的同步性。

以下是Vector类的一部分方法使用说明:

public class Main {
public static void main(String[] args) {
Vector vector = new Vector();
vector.add("BILL");
vector.add("JACK");

// 输出:[BILL, JACK]
System.out.println(vector);

// 输出:vector容量:10
System.out.println("vector容量:" + vector.capacity());

/*
* 设置此向量的大小。如果新大小大于当前大小, 则会在向量的末尾添加相应数量的 null 项。 如果新大小小于当前大小,则丢弃索引
* newSize 处及其之后的所有项。 如果新大小为负数,抛出ArrayIndexOutOfBoundsException 异常
*/
vector.setSize(21);
// 输出:vector容量:21
System.out.println("vector容量:" + vector.capacity());

/*
* 返回此向量的容量
*/
System.out.println(vector.size());// 输出:21

/*
* 返回此 List 的部分视图,元素范围为从 fromIndex(包括)到 toIndex(不包括)。 (如果 fromIndex 和
* toIndex 相等,则返回的 List 将为空)。 返回的 List 由此 List 支持,因此返回 List 中的更改将反映在此
* List 中,反之亦然。 返回的列表支持此列表支持的所有可选列表操作。
*/
List list = (List) vector.subList(0, 1);
// 输出:[BILL]
System.out.println(list.toString());

/*
* 返回一个数组,包含此向量中以恰当顺序存放的所有元素。
*/
Object[] obj = (Object[]) vector.toArray();
// 输出:BILL JAC null null null null null null
// null null null null null null null null null
// null null null null
for (Object ob : obj) {
System.out.println(ob);
}

vector.setSize(5);// 设置向量容量为5
String[] str = new String[6];
/*
* 返回一个数组,包含此向量中以恰当顺序存放的所有元素; 返回数组的运行时类型为指定数组的类型。 如果向量能够适应指定的数组,则返回该数组。
* 否则使用此数组的运行时类型和此向量的大小分配一个新数组。 注意:当返回的数组大小小于向量的容量时,返回为null的数组;
* 当返回的数组的大小和向量的容量相等,将向量元素放入数组中; 如果返回的数组的大小比向量的容量还要大,将向量元素放入数组中,
* 后面剩余的位置为null。
*/
vector.toArray(str);
// 输出:[BILL, JACK, null, null, null, null]
System.out.println(Arrays.toString(str));

/*
* 返回此向量的字符串表示形式,其中包含每个元素的 String 表示形式。
*/
// 输出:[BILL, JACK, null, null, null]
System.out.println(vector.toString());

/*
* 对此向量的容量进行微调,使其等于向量的当前大小。
*/
vector.trimToSize();
// 输出:5
System.out.println(vector.capacity());

/*
* 将此向量指定 index 处的组件设置为指定的对象。丢弃该位置以前的组件。 如果索引超出范围 (index < 0 || index >=
* size()), 抛出ArrayIndexOutOfBoundsException异常
*/
vector.setElementAt("Marry", 3);
// 输出:[BILL, JACK, null, Marry, null]
System.out.println(vector);

/*
* 用指定的元素替换此向量中指定位置处的元素。 如果索引超出范围 (index < 0 || index >= size())
* 抛出ArrayIndexOutOfBoundsException异常
*/
vector.set(3, "Change");
// 输出:[BILL, JACK, null, Change, null]
System.out.println(vector);

/*
* 从此向量中移除全部组件,并将其大小设置为零。
*/
vector.removeAllElements();
System.out.println(vector.size());//输出0

}
}

转载请注明出处:http://blog.csdn.net/hai_qing_xu_kong/article/details/44119233  情绪控_ 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: