TreeMap或者HashMap的区别:
List(对付顺序的好帮手): List接口存储一组不唯一(可以有多个元素引用相同的对象),有序的对象
Set(注重独一无二的性质): 不允许重复的集合。不会有多个元素引用相同的对象。
Map(用Key来搜索的专家): 使用键值对存储。Map会维护与Key有关联的值。两个Key可以引用相同的对象,但Key不能重复,典型的Key是String类型,但也可以是任何对象。
List
Java 的 List 是非常常用的数据类型。List 是有序的 Collection。
Java List 一共三个实现类:
分别是 ArrayList、Vector 和 LinkedList。
List是有序,可重复的。有序指的是存储顺序就是list的插入位置的顺序。
ArrayList
Vector
LinkedList
LinkedList既可以实现Queue接口,也可以实现List接口
三者区别
List是有序,可重复的。有序指的是存储顺序就是list的插入位置的顺序。
Set
Set 注重独一无二的性质,该体系集合用于存储无序(存入和取出的顺序不一定相同)元素, 值不能重复 。
对象的相等性本质是对象 hashCode 值(java 是依据对象的内存地址计算出的此序号)判断
的, 如果想要让两个不同的对象视为相等的,就必须覆盖 Object 的 hashCode 方法和 equals 方
法。
Set接口的特点:
1、不允许存储重复元素
2、没有索引,没有带索引的方法,不能使用普通的for循环
HashSet(Hash 表)
LinkHashSet(HashSet+LinkedHashMap)
TreeSet(二叉树)
Map
1、map集合是一个双集合列,一个元素包含两个值(键,值)
2、map集合中的元素,可以和value的数据类型可以相同,可以不同
3、map集合中的元素,key不能重复,value可以重复
4、map集合中的元素,key和value一一对应