首先是Set,List,Map
Set和list都是继承了Conllection接口,而Map是本身就是一个接口
set是最简单的一种集合,没有重复对象
set接口主要有两个实现:
1,hashSet:hashSet按照哈希算法进行存取集合中的对象,有hashcode(),存取速度比较快
2,TreeSet:实现了sortedSet接口而且这个treeset会给值排序
这两个都可以用迭代器进行遍历
List接口:
list有点像数组一样,实现有以下
1,ArrayList:有些和长度可以改变的数组一样,当数组长度不够的时候,自动增长0.5倍,插入与删除的速度慢
2,LinkedList:采用链表数据结构,插入,删除,时候很快,查找很慢
Map:
实现有以下:
1,HashMap:键值对,使用hashcode来找对应的key,线程不安全,允许有null的key和value
2,HashTable:线程安全,效率低,不允许null的key和value,好像现在被java视为不推荐使用
3,LinkHashMap:有序,和其他和HashMap差不多
4,TreeMap:二叉树的Map接口实现