java之集合(List Set Map等)特点简述

Java之常用集合特点简述

1 Collection 单列集合

1.1 List (有序可重复)

ArrayList:底层数组,查询快、增删慢,线程不安全,效率高,有索引,可重复

Vector :是老版本的 ArrayList ,唯一区别就是Vector是线程安全的

LinkedList:底层链表(双端队列),查询慢、增删快,具备链表的特点

1.2 Set 接口(无序唯一)

HashSet:基于哈希表结构,无序唯一

​ a.存储无序,因为对象的hashCode 值和哈希表存储的索引有关,hashCode是相对随机,所以无序;

​ b.唯一,去重复 依赖于 hashCode 和equals 方法;

​ c.可以存储 null ,但是 null 不能重复。

TreeSet:基于二叉树结构,元素唯一,可排序可比较

​ a.去重复,依赖于二叉树的存储特点;

​ b.排序依赖于二叉树的取特点;

​ c.有自然排序和比较器排序。

LinkedHashSet:基于链表和哈希表,有序唯一

​ a.有序,链表保证有序;

​ b.唯一,哈希表保证唯一。

2 Map 双列集合

2.1 HashMap:无序、键唯一,线程不同步,非安全

2.2 LinkedHashMap:有序,线程不同步,非安全

2.3 HashTable:无序,线程同步,安全

2.4 TreeMap:有序,线程不同步,非安全

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值