第十二章泛型与容器类

1.集合体系结构

第十二章泛型与容器类_第1张图片

我们学习的是接口但是使用的是实现类

2.Collection接口(需要导包)

Collection接口并没有具体的实现类,只能通过子接口的实现类来创建对象

第十二章泛型与容器类_第2张图片

public class CollectionDemo {
public static void main(String[] arga){
/*创建Collection对象*/
Collection c=new ArrayList();
}
}

(1)Collection的常用方法

第十二章泛型与容器类_第3张图片

(2)集合的遍历

第十二章泛型与容器类_第4张图片

 第十二章泛型与容器类_第5张图片

因为不知道循环次数所以用while进行循环,另外使用变量接收it。Next()而不是直接输出的原因是可以进行再次的操作比较方便

(3) 集合的使用步骤

第十二章泛型与容器类_第6张图片

 3.List(需要导包)

第十二章泛型与容器类_第7张图片

 (1)List特有的方法

第十二章泛型与容器类_第8张图片

 注意有关索引的方法索引不能越界不可以超出原集合中的索引个数,索引要存在

因为List继承自Collection所以可以用上面while的方法来进行遍里,下面是List的另一种遍历方法:

package 第十二章泛型与容器;
import java.util.ArrayList;
import java.util.List;
public class ListDemo01 {
public static void main(String[] args) {
List l=new ArrayList();
l.add("hello");
l.add("world");
l.add("java");
//遍历
for (int i = 0; i < l.size(); i++) {
	String string=l.get(i);
	System.out.println(string);
}
}
}

(2)并发修改异常

第十二章泛型与容器类_第9张图片

 当我们用迭代器遍历并添加元素时不能天机成功出现报错,这个就是并发修改异常

原因是迭代器依赖集合而存在,我们使用迭代器遍历并添加元素时以上面的为例:是因为调用方法添加是list进行的而迭代器·并不知道所以无法添加成功

改进方法:第十二章泛型与容器类_第10张图片

 (3)列表迭代器(继承自Iterator)

第十二章泛型与容器类_第11张图片

 next、hasNext方法和previous、hasPrevious的使用方法一样

‘但是用iterator遍历并添加元素是ListIterator调用add方法并不会报错之这一点和Iterator不太一样

(4)List的子类特点:

第十二章泛型与容器类_第12张图片

 

 (5)LinkedList的特有方法:

第十二章泛型与容器类_第13张图片

 

你可能感兴趣的:(容器,运维)