Java容器概括的分为Collection及Map两类。
Set
HashSet:使用的相当复杂的方式来存储元素的,是最快的获取元素方式,与存储顺序无关。
TressSet:按照枈结果的升序保存对象。
LinkedHashSet:按照被添加的顺序保存对象。
Map
HashMap:提供了最快的查找技术,与插入顺序无关。
TreeMap:按照比较结果的升序保存键。
LinkedHashMap:按照插入顺序保存键,同时还保留了HashMap的查询速度。
List
ArrayList:多用于快速随机访问,当在中间插入或删除时比较慢。
LinkedList:多用于插入及删除操作,随机访问比较慢。LinkedList还添加了可以使其用作栈、队列或双端队列的方法。
迭代器Iterator
Java的iterator只能单向移动
1、使用容器的方法iterator()返回一个iterator
2、使用next()获得序列中的下一个元素
3、使用hasNext()检查序列中是否还有元素
4、使用remove()将迭代器新近返回的元素删除
ListIterator
是Iterator的子类型,它只能用于各种List类的访问。尽管Iterator只能向前移动,但是ListIterator可以双向移动。
可通过调用listIterator()方法产生一个指向List开始处的ListIterator,并且还可以通过调用listIterator(n)方法创建一个一开始就指向列表索引为n的元素处的ListIterator。
注:新程序中不应使用过时的Vector,Hashtable,Stack