程序员人生 网站导航

Java学习笔记27

栏目:php教程时间:2015-03-27 08:18:56

Vector是List接口的实现类,支持List接口的全部功能,Vector类是基于数组实现的List类,在内部封装了1个动态的、


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


以下是Vector类的1部份方法使用说明:


public class Main { public static void main(String[] args) { Vector vector=new Vector(); ArrayList list=new ArrayList(); list.add("BILL"); vector.add(list); //输出:[[BILL]] System.out.println(vector); //输出:vector容量:10 System.out.println("vector容量:"+vector.capacity()); /* * 增加此向量的容量(如有必要),以确保其最少能够保存最小容量参数指定的组件数。 * 如果此向量确当前容量小于 minCapacity,则通过将其内部数据数组(保存在字段 elementData 中) * 替换为1个较大的数组来增加其容量。新数据数组的大小将为原来的大小加上 capacityIncrement, * 除非 capacityIncrement 的值小于等于零,在后1种情况下,新的容量将为原来容量的两倍, * 不过,如果此大小依然小于 minCapacity,则新容量将为 minCapacity。 */ vector.ensureCapacity(21); //输出:vector容量:21 System.out.println("vector容量:"+vector.capacity()); Vector vector1=new Vector(); vector1.add(list); /* * 如果指定的 Object 与此向量相等,则返回 true */ System.out.println(vector.equals(vector1));//输出:true /* * 返回此向量的第1个组件(位于索引 0) 处的项)。 */ System.out.println(vector.firstElement());//输出:[BILL] /* * 返回向量中指定位置的元素。 * 如果索引超越范围 (index < 0 || index >= size()),抛出ArrayIndexOutOfBoundsException 异常 */ System.out.println(vector.get(0));//输出:[BILL] /* * 返回此向量的哈希码值。 */ System.out.println(vector.hashCode()); vector.add("JACK"); vector.add("MARRAY"); vector.add("JACK"); //输出:[[BILL], JACK, MARRAY, JACK] System.out.println(vector); /* * 返回此向量中第1次出现的指定元素的索引,如果此向量不包括该元素,则返回 ⑴。更确切地讲, * 返回满足 (o==null ? get(i)==null : o.equals(get(i))) 的最低索引 i; * 如果没有这样的索引,则返回 ⑴。 */ System.out.println(vector.indexOf("JACK"));//输出:1 /* * 返回此向量中第1次出现的指定元素的索引,从 index 处正向搜索, * 如果未找到该元素,则返回 ⑴。 * 如果指定索引为负数,抛出IndexOutOfBoundsException异常 */ System.out.println(vector.indexOf("JACK", 2));//输出:3 /* * 将指定对象作为此向量中的组件插入到指定的 index 处。 * 此向量中的每一个索引大于等于指定 index 的组件都将向上移位, * 使其索引值变成比之前大 1 的值。 索引必须为1个大于等于 0 且 * 小于等于向量当前大小的值(如果索引等于向量确当前大小, * 则将新元素添加到向量)。 * 如果索引超越范围 (index < 0 || index > size()),抛出ArrayIndexOutOfBoundsException异常 */ vector.insertElementAt("WORD", 1); //输出:[[BILL], WORD, JACK, MARRAY, JACK] System.out.println(vector); /* * 当且仅当此向量没有组件(也就是说其大小为零)时返回 true;否则返回 false。 */ System.out.println(vector.isEmpty());//输出:false /* * 返回此向量中最后1次出现的指定元素的索引;如果此向量不包括该元素,则返回 ⑴。更确切地讲, * 返回满足 (o==null ? get(i)==null : o.equals(get(i))) 的最高索引 i * ;如果没有这样的索引,则返回 ⑴。 */ System.out.println(vector.lastIndexOf("JACK"));//输出:4 /* * 移除此向量中指定位置的元素。将所有后续元素左移(将其索引减 1)。返回此向量中移除的元素。 * 如果索引超越范围 (index < 0 || index >= size()),抛出ArrayIndexOutOfBoundsException 异常 */ vector.remove(0); //输出:[WORD, JACK, MARRAY, JACK] System.out.println(vector); /* * 移除此向量中指定元素的第1个匹配项,如果向量不包括该元素,则元素保持不变。 * 更确切地讲,移除其索引 i 满足 (o==null ? get(i)==null : o.equals(get(i))) * 的元素(如果存在这样的元素)。 */ System.out.println(vector.remove("WORD")); System.out.println(vector);//输出:[JACK, MARRAY, JACK] } }

关于Vector的更多方法,请参看后续的文章




转载请注明出处:http://blog.csdn.net/hai_qing_xu_kong/article/details/44106381  情绪控_ 

------分隔线----------------------------
------分隔线----------------------------

最新技术推荐