1.集合的框架图
1.1什么是集合?
集合有两个父接口:一个Collection,一个Map
Collection有两个子接口:一个List,一个Set
List有两个常见类:一个ArrayList,一个LinkedList
Set有两个实现类:一个HashSet,一个TreeSet
Map有两个常见类:一个HashMap,一个HashTable
1.2list的特点
不唯一,有序 (python的list)
1.3ArrayList和LinkedList的区别
ArrayList查询效率高,下标
LinkedLIst增删改效率高,双向链表
1.4Set的特点
唯一,无序 (python的set)
1.5Map的特点
键值对key:value (python的dict)
2.Arraylist
2.1不带泛型
//new一个不带泛型的容器
ArrayList arrayList = new ArrayList();
2.1.1添加元素
arrayList.add("赛罗奥特曼");
arrayList.add(33);
arrayList.add(false);
//添加的元素类型不限制
//获取容器长度arrayList.type();
2.1.2删除
remove(1); --->33
//放数字,删除的都是下标
remove(“赛罗奥特曼”); --->"赛罗奥特曼"
//没有不会报错
2.1.3查询
for循环查询:
for (int i = 0; i < arrayList.size(); i++)
{
System.out.println(arrayList.get(i));
}
增强for循环:
for(Object i : arrayList)
{
System.out.println(i);
}
2.2带泛型
ArrayList arrayList = new ArrayList();
2.2.1添加
arrayList.add("赛罗奥特曼");
arrayList.add(0, "zero");//添加带下标,在指定位置插入
2.2.2删除
arrayList.remove("zero");//内容
arrayList.remove(2);//下标
2.2.3查询
for循环查询:
增强for循环:
2.2.4查询泛型对象
Dog d1 = new Dog("aaa");
Dog d2 = new Dog("bbb");
Dog d3 = new Dog("ccc");
ArrayList arrayList = new ArrayList();
arrayList.add(d1);
arrayList.add(d2);
arrayList.add(d3);