集合的复习

集合框架

一.Collection接口:单列集合,用来存储一个一个的对象

1. List接口:存储有序,可重复的数据

     - Arraylist:作为List的主要实现类;线程不安全,效率高;底层使用Object[ ]elementData存储数据。
     - LinkedList:对于频繁的插入操作,LinkedList效率比ArrayList高;底层使用双向链表存储数据
     - Vector:作为List的古老实现类,线程安全,效率低;底层使用Object[ ]elementData存储数据。
2.Set接口:存储有序,不可重复的数据===》类似于高中"集合"

     - HashSet:作为Set的主要实现类;线程不安全;可以存储null值
     - LinkedHashSet:可以按照添加的顺序遍历内部元素;对于频繁的遍历操作,LinkedHashSet效率比Hash Set高。
     - TreeSet:可以按照添加数据的指定属性进行排序,即添加的对象必须是相同类。

二.Map接口:双列集合,用来存储一对一对(key-value)的数据===》类似于高中“函数”

1.HashMap接口:作为Map的主要实现类;线程不安全,效率高;可存储null的key-value;底层为数组+链表+红黑树结构

     - LinkedHashMap:可按照添加元素的顺序实现遍历集合

2.TreeMap接口:按照添加的key-value对进行排序,实现排序遍历;此时考虑key的自然排序和定制排序;底层使用红黑树。

3.HashTable接口:作为Map的古老实现类;线程安全,效率低;不可存储null的key-value

     -properties:常用来处理配置文件,key和value都是String类型。

1.Map中的类若为自定义类,必须重写equals()和hashcode()方法;value若为自定义类,必须重写equals()方法。
2.key(无序,不可重复,Set存储所有key)+value(无序,可重复,Collection存储所有value)=entry(无序,不可重复,Set存储所有entry)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值