java集合

集合的出现:

数组申请的内存是定长的,一旦数据超过数组申请的内存长度,就需要扩容,非常麻烦,java集合的出现解决了这一问题;

集合顶级集合 Iterable接口,里面提供三个方法,hasnext()是否有下一个,next下一个,rem删除;

然后下面的一个接口是collection,实现这个接口的都可以使用foreach遍历;

然后下面分两大类,list 有序集合,set 不重复的集合;

然后根据一些日常的需求他们有一些子类,分别结合了有序去重等问题;包括前缀 array 有索引,查询快;但是插入慢删除慢,数组的通病;

linked链接,链表只关注上一个下一个,所以插入删除快,但是没有索引,所以查询慢.hash介于两者之间,但是hash底层也是个数组,只不过是用自己的算法的值做索引;

map集合的K值集合是一个set集合,不允许重复,允许为null,重复则覆盖而不是删除

posted @ 2017-08-02 21:44  斯大林格勒  阅读(68)  评论(0编辑  收藏  举报