Collection
├List
│├LinkedList
│├ArrayList
│└Vector
│ └Stack
└Set
Map
├Hashtable
├HashMap
└WeakHashMap
这个一定要记住,面试,笔试必问的!!!!!!!!!!
首先我们先看一下Arraylist,Linkedlist的区别
1.Arraylist是基于动态数组的数据结构,Linkedlist是基于链表的数据结构
2.对于随机存储set()或获取get(), Arraylist 要优于Linkedlist ,因为Linkedlist要移动指针
3.对于新增add()和删除move()来讲,Linkedlist要优于Arraylist,因为前者只需要移动指针,而后者要移动全部的数据。
4.两者都是非线程安全的
vector是线程安全的,也就是不支持多线程之间共享同一个集合或对象,但效率低。
Stack继承自Vector,实现一个后进先出的堆栈。Stack提供5个额外的方法使得Vector得以被当作堆栈使用。基本的push和pop 方法,还有peek方法得到栈顶的元素,empty方法测试堆栈是否为空,search方法检测一个元素在堆栈中的位置。Stack刚创建后是空栈