一、Collection
1.static 方法:
Collections.sort(List<T>):实现List排序功能
Collections.fill(List<T> , Object o):向已经添加有内容的容器,改变这个容器内的这些元素全为这个值
二、List
ArrayList:随机检索快速,但是插入、删除费时间。
1.static 方法:
add():添加元素
addAll(List):添加一个List进去,如果是数组要转换为List,可以利用Arrays.asList(a []);
clear:清除容器中的元素
set(index a,Object o):替换元素
size():容器大小,需要有元素的情况下
isEmpty():判断容器是否为空
contains(Object o):查看容器中是否存在这个元素
iterator():对容器进行底层遍历,hasNext():是否有下个元素,next(),就是下一个值。
subList(index low,index high):截容器部分出来
swap(List , a , b):实现交换数值
LinkedList:方便插入和删除,但是不方便与随便检索 (按插入顺序排序)
List可以利用Collections.sort方法进行排序,List容器不能排除相同的对象和基本数据类型,数据只要是属于这个泛型,就可以存储在这个容器中。
三、Set (存入的数据是为唯一的,对于存储引用类型对象来说,只要地址不同,也会存储进来),基础方法是涵盖上面的List的!
HashSet:优点为快速访问。存储方式不是写入的数据顺序,而是随机存储的!
TreeSet:存储的元素是有排序的,String 是按照 A-Z 再 a-z 排序。
LinkedHashSet:存储时时按照输入的顺序排序。
四、Map 主要应用和List 、Set 之间的映射 KEY VALUE
static 方法:
put(key , value); 存放数据
HashMap:方便随机访问
TreeMap:元素排序好
LinkedHashMap:按存储数据的排序进行存储
HashCode 和 equals 重写问题!!!!!!!
其他知识:
可以使用asList方法实现数组转换为容器 :Arrays.asList("once two three fort ddd".split(" "));
String.CASE_INSENSITIVE_ORDER
comparable 中包含 compareto