Java容器
容器的概念
在Java当中,如果有一个类专门用来存放其他类的对象,这个类就叫做容器,或者就叫做容器,或者就叫做集合,集合就是将若干性质相同或相近的类对象组合在一起而形成的一个整体。
1.List
ArrayList:基于动态数组实现,支持随机访问;
LinkedList:基于双向循环链表实现,只能顺序访问,但是可以快速地在链表中间插入和删除元素。不仅如此,LiknedList还可以用作栈、队列和双端队列。
2.Set
HashSet:基于Hash实现,支持快速查找。
LiknedListHashSet:具有HashSet的查找效率,且内部使用链表维护的插入顺序,因此具有有序性。
3.Queue
只有两个实现:LiknedList 和 PriorityQueue,其中LinkedList支持双向队列,PriorityQueue是基于堆结构实现。
4.Map
HashMap:基于Hash实现
LinkedHashMap:使用链表维护元素的顺序,顺序为插入顺序或者最近最少使用(LRU)顺序。
TreeMap:基于红黑树实现
ConcurrentHashMap:线程安全 Map,不涉及类似于 HashTable 的同步加锁
5.Irterator
所有实现了Collection接口的容器类都有一个iterator方法用以返回一个实现了iterator接口的对象,iterator对象乘坐迭代器,泳衣方便的实现对容器内元素遍历操作
iterator接口定义的方法
1.boolean hasNext()判断游标右边是否有元素,如果存在返回真,否则返回假;
2.Object next()返回游标右边的元素并将游标移动到下一个位置
3.void remove()删除游标左面的元素,在执行完next之后,该操作只能执行一次。(尽量使用容器自带的remove方法)