java集合—概述
Java 集合框架由接口和类组成,有助于处理不同类型的集合,例如列表,集合,映射,堆栈和队列等。这些集合类解决了许多非常常见的问题。如:添加,删除,更新,排序,搜索和更复杂算法的常见操作。集合API的核心接口如下:
- List
- Set
- Map
- Stack
- Queue
- Deque
- Iterator
- Iterable
1.List
List表示有序的对象集合。可以通过索引访问元素,或搜索列表中的元素,就像数组一样。实现List接口的类有:ArrayList,CopyOnWriteArrayList,LinkedList,Stack和Vector。
2.Set
Set表示无序的对象集合。与List不同,Set不允许以任何顺序的方式访问Set的元素。有些Set基于它们的自然顺序对元素进行排序,但是Set接口本身没有提供这样的功能。实现Set的类有:ConcurrentSkipListSet,CopyOnWriteArraySet,EnumSet,HashSet,LinkedHashSet和TreeSet
3.Map
Map表示键值对(key-value)的存储,Map不能存储重复的Key,即:每个Key对应一个value,且key和value都可以是对象。实现Map的类有ConcurrentHashMap,ConcurrentSkipListMap,EnumMap,HashMap,Hashtable,IdentityHashMap,LinkedHashMap,Properties,TreeMap和WeakHashMap。
4.Stack
Stack表示经典的堆栈数据结构,其中元素可以被推送到堆栈的顶部,再次从堆栈的顶部弹出(即:后进先出)。
5.Queue
Queue也是一个经典的队列数据结构,其中对象插入队列的一端,并从队列另一端的队列中取出(即:先进先出)
6.Deque
Deque表示双端队列,可以在其中插入和删除队列两端的元素,也可以称之为双端堆栈。
7.Iterator
Iterator表示能够迭代某种Java集合的组件。例如,List或Set。您可以从Java Set,List,Map等获取Iterator实例。
8.Iterable
Iterable接口与Java Iterator接口的功能非常相似。Iterable接口允许使用Java中的for-each循环迭代Java Collection。