(1)JCF的工具类:JCF提供了很多数据结构,除了这些数据结构,还提供了两种工具类
----工具类不存储数据,而是在数据容器上,实现高效操作(主要是排序操作和搜索操作)
---- Arrays类和 Collections类
Arrays:处理对象是数组
----排序:对数组排序,sort / parallelSort
----查找:从数组中查找一个元素,binarySearch
----批量拷贝:从源数组批量复制元素到目标数组,copyOf
----批量赋值:对数组进行批量赋值,fill
----等价性比较:判定两个数组内容是否相同,equals
(2)包装器类:Collections,处理对象是Collection及其子类(基本聚焦在List上的处理)
----排序:对List进行排序,sort
----搜索:从List中搜索元素,binarySearch
----批量赋值:对List批量赋值,fill
----最大、最小:查找集合中最大值 / 最小值,max,min
----反序:将List反序排列,reverse
(3)对象比较:
----对象实现Comparable接口(需要修改对象类)
需要重写compareTo方法(> 返回1 == 返回0 < 返回-1)
Arrays和Collections在进行对象sort时,自动调用该方法
----新建Comparator类(适用于对象类不可更改的情况,比如别人只是提供了要给jar包或者一个.class给我,我没有源码我改不了这个类,那么我们如何给自定义对象排序或者比较呢?)
在这个Comparator类中,实现一个compare方法> 返回1 == 返回0 < 返回-1)
Comparator比较器将作为参数提交给工具类的sort方法(工具类就可以根据比较器对List进行排序)