Collection是所有集合类都实现的接口,就比如是所有集合的最上级。
结构:
Collection--List--Vector
--Arraylist
--LinkedList
Collection --Set--HashSet
--HashSet --LinkedHashSet
--SortedSet--TreeSet
Vector:一个本应该淘汰的类,只因以前的人使用习惯了保存了下来,一般使用Arraylist,效率较高。
List:所有List中只能容纳单个不同类型的对象组成的表。所有List中可以有相同的元素,可以存在null元素。
ArrayList适合查询,LinkedList(链表,先进先出)适合添加,删除操作。
Set:set不能像Colletion和List那样可以放入重复的对象。
HashSet:采用散列存储,所有数据是无序的,重复的只会出现一次(重写equals和hashCode方法可以删除重复)。
SortedSet:一个用于排序的接口。
TreeSet:SortedSet的子类,有序存放,可以通过实现Comparable接口,覆盖compareTo方法,定义排序规则。
Map:Map没有继承Collection接口,Map提供key到value的映射。一个Map中不能包含相同的key,每个key只能映射一个value.
TreeMap:按照key对数据排序,如果是自己定义的类就必须实现Comparable<>接口。
迭代Iterable<T>
方法:
boolean hasNext()
如果仍有元素可以迭代,则返回true。
E next()
返回迭代的下一个元素。
如果想要从后往前输出就必须用Iterator的子接口listiterator