6章 集合框架
为什么使用集合框架?
解决数量不确定。
是一样套性能优良,使用方便的接口和类,他们位于java.util包中。
Collection
List Set
Collection接口存储一组不唯一,无序的对象。
List接口的实现类:
Arraylist 不唯一 有序 遍历效率高
LinKedList 不唯一有续的
Arraylist的使用
添加一个object对象
遍历方式结果一样
//1索引号访问便利
for (int i = 0; i < list.size();i++) {
Object obj=list.get(i);
Dog dog=(Dog)obj;
dog.print();
}
for循环
System.out.println("**********使用fortatch访问便利**********");
for (Object object : list) {
((Dog)object).print();
}
//06判断对象是否存在?
if(list.contains(dog5)){
System.out.println("星星asd对象存在");
}else{
System.out.println("星星asd对象不存在");
}
linkedlist用来提高效率插入。删除
LinkedList list=new LinkedList();
list.add(dog1);//自动转换成了object类型
list.add(dog2);
list.add(dog3);
list.add(dog4);
list.add(0,dog5);//插入一个星星asd,就把兰兰替代了,重新排列
list.addFirst(dog5);//直接自动添加到第一个
list.addLast(dog6);//直接自动添加到第一个
for (Object object : list) {
((Dog)object).print();
}
Conltion 接口 和map接口
List set
Arraylist linkedList
Arraylist和linkedList有何异同?
同:都是有索引号来便利的,
添加,删除的方法,遍历的方法
LinkedList 快速的插入和删除的方法
泛型集合直接用,不需要类型转换