Collection
1. Collection是所有一串序列的容器的root interface,比如list,
Collection<Integer> c = new ArrayList<Integer>();
- 类型有
ArrayList<String>()
LinkedList<String>()
HashSet<String>()
TreeSet<String>()
LinkedHashSet<String>()
- 用add存值,用get取值
Map - Map中类型有
HashMap
public Iterator<Pet> iterator() {
return new Iterator<Pet>() {
private int index = 0;
public boolean hasNext() {
return index < pets.length;
}
public Pet next() { return pets[index++]; }
public void remove() { // Not implemented
throw new UnsupportedOperationException();
}
};
}
- 当你的类已经是有正向的Iterator了,那你就自己定义一个反向的reverse当做反向的Iterator,写法和正向的Iterator类似。
ListIterator - 特性
(1) 双向
(2) 可以知道前一个和后一个的索引
(3) 可以用set替换当前项
(4) 可以用listIterator(n)从第n开始
LinkedList - getFirst( ) and element( )都是返回第一个元素,如果为空就throw NoSuchElementException
peek()也是返回第一个元素,但是返回null如果list为空 - removeFirst( ) and remove( )都是把第一个删了,返回第一个元素,如果为空就throw NoSuchElementException
poll()也是把第一个删了,如果为空就返回null - offer( ) is the same as add( ) and addLast( )这三个一样,都是在末尾插入list
Stack
Set - TreeSet默认构造是字典序,大写和小写分开的,可以用String.CASE_INSENSITIVE_ORDER Comparator,让它大小写不敏感
- 普通的set就是没有sorted的无重复的集合
Map - int,double 等基本类型会自动转换成Integer或者Double类型,因为container中不能使用基本类型。
- get( key ) 如果存在key就返回对应的value,否则就返回null
- 用put(key,value)来设置值
- 用这样public static Map