您的位置:首页 > 编程语言 > Java开发

java集合概述

2017-02-16 10:28 253 查看
通常来说集合有两大根接口,Collection和Map,Collection下边有三个子接口分别是:Set、Queue、List ,所以Set、Queue、Lis和Map将java集合分为三大类。(一般准备这四类即可)

Set集合-----> 是一个罐子,讲一个对象添加到Set集合中时,Set集合无法记住添加这个元素的 顺序,所以Set集合中元素不允许重复

List集合----->像一个数组,可以记住添加元素的 顺序,可重复

Map集合----->保存的每项数据是key->value的形式,无序     

总结如下:

Set集合:无序不可重复

List集合:有序可重复

Map集合:无序不可重复

Set接口:

HashSet类:

HashSet是Set集合的 典型实现,其中不得不说两个方法equals()和hashCode()

HashSet集合判断两个元素相等的标准是两个对象通过equals()方法比较相等,并且通过hashCode()方法返回值也相等。

hashCode()方法通过元素的hashCode值来计算存储位置,当访问该元素时候,HashSet先计算该元素的hashCode值,然后直接到该hashCode值对应的存储位置去取出该元素。这就是HashSet很快的原因。

LinkedHashSet类:

该类是HashSet类的子类,也是根据hashCode值来决定元素的存储位置的,但他同时使用了链表维护顺序,也就是说当遍历LinkedhashSet集合里的元素时,LinkedhashSet将会按照元素的添加顺序来访问集合里的元素,因为要维护元素的插入顺序,所以性能略低于HashSet。

TreeSet类:

TreeSet是Set接口子接口SortedSet的实现类,可以确保集合元素处于排序状态。

有序:元素插入顺序和存储循序一致

无序:元素插入顺序和存储循序一致
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: