Collection接口:
Collection接口存储一组不唯一,无序的对象
List 接口继承Collection接口,存储一组不唯一,有序(插入顺序)的对象
Set 接口存储一组唯一,无序的对象
二、List接口:ArrayList实现了长度可变的数组,在内存中分配连续的空间。遍历元素和随机访问元素的效率比较高。
LinkedList采用链表存储方式。插入、删除元素时效率比较高
List常用方法
LinkedList的特殊方法
ArrayList与LinkedList对比
三、Set接口Set 接口存储一组唯一,无序的对象
Set 接口常用的实现类:HashSet
HashSet 集合的特点:
集合内的元素是无序排列且不允许重复。
HashSet集合的查找效率高。
允许集合元素值为null。
Set接口方法
HashSet集合类不存在get方法
四、Map接口Map接口存储一组键值对象,提供key到value的映射
Map接口常用的实现类HashMap
HashMap类的特点:
不保证映射的顺序,特别是不保证顺序恒久不变(不保证顺序是因为是Hash)
数据添加到HashMap集合后,所有数据的数据类型将转换为Object类型,所以从其中获取数据时需要进行强制类型转换。
Map接口的常用方法
五、泛型
泛型的本质是参数化类型:将所操作的数据类型指定为一个参数,使代码可以应用于多种类型。
泛型的定义:将对象的类型作为参数,指定到其他类或者方法上,从而保证类型转换的安全性和稳定性。
泛型的优点
所有强制转换都是自动和隐式进行的,安全简单。
提高了代码的重用率
典型的泛型集合ArrayList
泛型集合中的数据不再转换为Object
泛型集合的优点
存储数据时进行严格类型审查,确保只有合适类型的对象才能存储在集合中。
从集合中检索对象时,减少了强制类型转换。
除了指定了集合中的元素类型外,泛型集合和之前学习的集合的用法完全一样
六、Collections算法类Collections类是Java提供的一个集合操作工具类。
Collections类定义了一系列用于操作集合的静态方法,用于实现对集合元素的排序、查找和替换等操作。
Collections和Collection是不同的,前者是集合的操作类,后者是集合接口
Collections的常用方法
sort():排序
binarySearch():查找
max()min():查找最大最小值
Collections排序:
实现一个类的对象之间比较大小,该类要实现Comparable
重写 public int compareTo(T o)方法。
如果该对象小于、等于或大于指定对象,则分别返回负整数、零或正整数。
总结



