Think In Java 笔记7 Holding Your Objects

来源:互联网 发布:添加hp打印机 usb端口 编辑:程序博客网 时间:2024/05/29 13:59

Collection
1. Collection是所有一串序列的容器的root interface,比如list,

Collection<Integer> c = new ArrayList<Integer>();
  1. 类型有
ArrayList<String>()LinkedList<String>()HashSet<String>()TreeSet<String>()LinkedHashSet<String>()
  1. 用add存值,用get取值
    Map
  2. 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();        }    };}
  1. 当你的类已经是有正向的Iterator了,那你就自己定义一个反向的reverse当做反向的Iterator,写法和正向的Iterator类似。
    ListIterator
  2. 特性
    (1) 双向
    (2) 可以知道前一个和后一个的索引
    (3) 可以用set替换当前项
    (4) 可以用listIterator(n)从第n开始
    LinkedList
  3. getFirst( ) and element( )都是返回第一个元素,如果为空就throw NoSuchElementException
    peek()也是返回第一个元素,但是返回null如果list为空
  4. removeFirst( ) and remove( )都是把第一个删了,返回第一个元素,如果为空就throw NoSuchElementException
    poll()也是把第一个删了,如果为空就返回null
  5. offer( ) is the same as add( ) and addLast( )这三个一样,都是在末尾插入list
    Stack
    Set
  6. TreeSet默认构造是字典序,大写和小写分开的,可以用String.CASE_INSENSITIVE_ORDER Comparator,让它大小写不敏感
  7. 普通的set就是没有sorted的无重复的集合
    Map
  8. int,double 等基本类型会自动转换成Integer或者Double类型,因为container中不能使用基本类型。
  9. get( key ) 如果存在key就返回对应的value,否则就返回null
  10. 用put(key,value)来设置值
  11. 用这样public static Map
0 0
原创粉丝点击