集合就是“由若干个确定的元素所构成的整体”
List
:一种有序列表的集合,例如,按索引排列的Student
的List
;Set
:一种保证没有重复元素的集合,例如,所有无重复名称的Student
的Set
;Map
:一种通过键值(key-value)查找的映射表集合,例如,根据Student
的name
查找对应Student
的Map
。
Java集合的设计有几个特点:一是实现了接口和实现类相分离,二是支持泛型
Java集合使用统一的Iterator
遍历
List集合
//如果以后要集合频繁的做新增,删除可以使用Linkedlist 效率高 //如果以后要集合频繁的做查询,修改可以使用Arraylist 效率高
1.ArrayList
2.LinkedList
3.set:用于存储不重复的元素集合
Iterator:迭代器用来遍历集合
4.Map
这种键值(key-value)映射表的数据结构,作用就是能高效通过key
快速查找value
(元素)
注意:Map中不存在重复的key,因为放入相同的key,只会把原有的key-value对应的value给替换掉。
遍历key
同时遍历key
和value
泛型就是编写模板代码来适应任意类型
使用泛型
泛型的好处是使用时不必对类型进行强制转换,它通过编译器对类型进行检查;
注意泛型的继承关系:可以把ArrayList<Integer>
向上转型为List<Integer>
(T
不能变!),但不能把ArrayList<Integer>
向上转型为ArrayList<Number>
(T
不能变成父类)。