首页 > 编程 > Java > 正文

java集合概述

2019-11-08 19:36:28
字体:
来源:转载
供稿:网友

通常来说集合有两大根接口,Collection和Map,Collection下边有三个子接口分别是:Set、Queue、List ,所以Set、Queue、Lis和Mapjava集合分为三大类。(一般准备这四类即可)

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的实现类,可以确保集合元素处于排序状态。

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

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


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表