本章讲解集合和泛型的相关知识,其中泛型仅做了初步的理解,具体如下:
- JDK 中的集合可以分为 Collection 家族和 Map 家族两大类,Collection 集合中存放的是单值元素组成的集合,Map 集合中存放的由键值对元素组成的集合。
- List 集合中的元素是有序的、可重复的;Set 集合中的元素无序的、不可重复。
- Comparable 接口称为内部比较器,Comparator 接口称为外部比较器,既可以通过重写前者中的 compareTo()方法对元素进行排序,也可以通过重写后者的 compare() 方法对元素进行排序。
- Collection 接口中定义了 iterator() 方法,其返回值是 Iterator 对象。通过 Iterator 对象的 hasNext() 和 next() 方法可以实现对集合元素的遍历。
- 可以使用增强 for 循环和迭代器对 Collection 集合进行遍历;在遍历 Map 集合时,需要先将 Map 转为单值集合(key 集合、value 集合或者 entry 集合),然后再遍历。
- 使用泛型可以限制集合中元素的类型,避免了在集合中进行强制类型转换等繁琐操作。
一:ArrayList
二:HashSet![](https://img-blog.csdnimg.cn/b64c10f13bba4c36a7b17a53e10bbce5.png)
三:HashMap ![](https://img-blog.csdnimg.cn/87294f95a8d240e4b4a8f2f20e6b4e7b.png)
四:Iterator![](https://img-blog.csdnimg.cn/8f4e844c94c141bd8b4f7181e9176cef.png)
五:hashCode()与equals()
对自定义的类进行比较,用到hashCode()和equals()方法,hashCode()根据一定的规则将与对象相关的信息映射成一个数值,数值通过一些算法完成,对于一些具体需求是需要调研的。