码迷,mamicode.com
首页 > 编程语言 > 详细

Java学习笔记28

时间:2015-03-07 21:23:48      阅读:168      评论:0      收藏:0      [点我收藏+]

标签:java   list   集合   线程安全   vector   

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  情绪控_ 



Java学习笔记28

标签:java   list   集合   线程安全   vector   

原文地址:http://blog.csdn.net/hai_qing_xu_kong/article/details/44119233

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!