Connection集合
1、List:是一个有序集合,可以放重复的数据
- List:ArrayList、LinkedList、Vector
(1)ArrayList:查询数据比较快,添加和删除数据比较慢(基于可变数组)
(2)LinkedList:查询数据比较慢,添加和删除数据比较快(基于链表数据结构)
(3)Vector:Vector 已经不建议使用,Vector 中的方法都是同步的,效率慢,已经被 ArrayList取代
2.使用及遍历方式
(1)ArrayList与LinkedList是相同的
Collection c=new ArrayList();//创建ArrayList
c.add(任意类型);//添加元素
开始遍历
//方式1:size()返回该集合的元素数;get(int index)返回此列表中指定位置上的元素,是属于ArrayList的方法;因此创建ArrayList的格式:ArrayList c = new ArrayList();
for (int i=0; i<c.size(); i++) {
//将 Object 强制转换为 Integer
Object e = c.get(i);
System.out.println(e);
}
System.out.println("");
//第二种方式:采用 Iterator 遍历数据(while 循环);Iterator 是一种模式,主要可以统一数据结构的访问方式
//获取迭代器:迭代器的三种方法
//boolean hasNext() 如果仍有元素可以迭代,则返回 true。
//E next() 返回迭代的下一个元素。
//void remove() 从迭代器指向的 collection 中移除迭代器返回的最后一个元素(可选操作)。
Iterator iter = c.iterator();
while (iter.hasNext()) {
Object v = iter.next();
System.out.println(v);
}
System.out.println("");
//第三种方式:采用 Iterator 遍历数据(for循环)
for (Iterator iter1=c.iterator(); iter1.hasNext();) {
Object v = iter1.next();
System.out.println(v);
}
//第四种:转换成对象数组。
Object[] oArray1 = c.toArray();
for (int i=0; i<oArray1.length; i++) {
Object v = oArray1[i];
System.out.println(v);
}
System.out.println("");
注释:
toArray的详解:
Object[] toArray():
返回包含此 collection 中所有元素的数组。如果 collection 对其迭代器返回的元素顺序做出了某些保证,那么此方法必须以相同的顺序返回这些元素。
返回的数组将是“安全的”,因为此 collection 并不维护对返回数组的任何引用。(换句话说,即使 collection 受到数组的支持,此方法也必须分