队列:队列在尾部增加元素,在队列的头部删除元素,并且可以查找队列中元素的个数,并且按照先进先出的规则检索对象时就应该使用队列。
集合的基本接口是collection,其中包含几个方法:
boolean add(E element);
Iterator<E> iterator();
Collection:List、Set、Queue
List是一个有序集合:ArryList LinkList Vector
ArrayList是一个基于数组的集合,插入速度比较慢,但是检索速度快。
LinkedList是一个基于双向链表的集合,插入速度快,但是检索速度慢。
Vector在需要动态数组的时候常使用Vector,它的所有方法都是同步的。
Set是一个无序集合,而且不可以添加重复元素。
HashSet是一个没有重复元素的无需集合。通过散列表为每个对象计算一个整数,称为散列码。只有不关心集合的顺序才可以用HashSet。
TreeSet一种有序集。可以没有顺序的将元素插入到集合中去。在对集合进行遍历的时候,将每个值自动地按照排序后的顺序输出。
LinkedHashSer可以记住元素插入顺序的集。
Map用来存放键值对(映射)散列映射对键进行映射,与键关联的值不能进行散列或者比较。
HashMap一种键值对的数据结构。
TreeMap一种有序排列的映射表。
LinkedHashMap一种可以记住键值对增加次序的映射表。
轻量集合包装器:
Array类的静态方法asList将返回一个包装了普通Java数组的List包装器。