Java 集合小结



List:元素有序可以重复,可以控制元素插入的位置或者删除制定位置元素。

ArrayList:数组序列,使用一维数组是List的一个重要的实现类。该类实现的是可变数组。

线程不安全,查找速度快。

ListedList:链表类采用链表结构保存对象。使用循环双链表实现List。

链表结构,线程安全,查找速度慢,增加、删除速度快。快速插入。

 

Set:元素无序不可以重复。

HashSet:哈希集是Set的一个重要的实现类根据哈希码来存取集合中的元素。让元素有序输出要使用LinkedHashSet。

TreeSet:树集合实现了Set接口,保证元素处于有序状态用TreeSet。

 

Map:提供了一种映射,以<key,value>的形式存储数据结构的对象。Key不可以重复,Value可以重复。同时Map支持泛型。

 

HashMap:基于哈希表的Map接口的实现。使用位桶和链表实现(最近的jdk1.8改用红黑树存储而非链表),它是线程不安全的Map,方法上都没有synchronize关键字修饰效率比较高。允许使用null值和null键。保证Key唯一。

 

TreeMap:根据键对象按照一定顺序排序的,不允许键对象是null.


HashTable-接口最典型的实现方法基于“拉链法”实现的散列表,一般用于多线程程序中。Key,value不可以为null

ConcurrentHashMap -Map的多线程安全,其实可以理解为,一个ConcurrentHashMap是由多个HashTable组成
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值