zoukankan      html  css  js  c++  java
  • java集合框架

    一、集合类根接口(Collection,Map)
            Collection    
            |
            |----List
            |   |---ArrayList
            |   |---LinkedList
            |   |---Vector
            |       |---Stack
            |----Set
            |    |---HashSet
            |    |---SortedSet
            |    |    |---TreeSet
            |    |---EnumSet
            |----Queue
                |---Deque
                |---PriorityQueue
     
            Map
            |-----HashTable
            |    |---Properties
            |-----SortedMap
            |    |---TreeMap
            |-----HashMap
            |    |---LinkedHashMap
    1.  Set、List和Map可以看做集合的三大类.
        List集合是有序集合,集合中的元素可以重复,访问集合中的元素可以根据元素的索引来访问.
        Set集合是无序集合,集合中的元素不可以重复,访问集合中的元素只能根据元素本身来访问(也是不能集合里元素不允许重复的原因).
        Map集合中保存Key-value对形式的元素,访问时只能根据每项元素的key来访问其value.
     
    2.ArrayList,HashMap是异步的,是线程安全的
        Vector,HashTable是同步的,不是线程安全的
     
    3.实现List接口的有:ArrayList,LinkedList,Vector,Stack
     
    4.ArrayList实现大小可变的数组
        #1.方法:boolean    add(E e),     void add(int index,E e);
                        boolean    addAll(Collection<? extends E> c)
                        void    clear(),   
                         E    get(int index) 
                        int    indexOf(Object o)
                        boolean    isEmpty()
                        E    remove(int index),    boolean    remove(Object o)
                        int    size();    int capacity()
                        
     
    5.Vector
        #1.方法:boolean    add(E e),     void add(int index,E e);
                        boolean    addAll(Collection<? extends E> c)
                        int    capacity(),    void    clear()
                        E    elementAt(int index)
                        int    indexOf(Object o),    int    lastIndexOf(Object o)
                        void    insertElementAt(E obj, int index)
                        E    remove(int index)
                        
     
    6.HashSet
        #1.方法:boolean    add(E e),    void    clear()
                        Object    clone(),        boolean    isEmpty()
                        boolean    remove(Object o),    int     size()
     
    7.HashTable
        #1.方法:void    clear(),    V    get(Object key)
                        int hashCode(),    boolean    isEmpty()
                        Enumeration(K)    keys(),    V    remove(Object key)
                        int size(),    Collection<V>    values()
    8.HashMap
        #1.方法:void    clear(),    V    put(K key, V value)
                        V    get(Object key),    Set<k>    keySet()
                        V    remove(Object    key),    int     size()
                        Collectin<V>    values()
     
    9.遍历:
        #1.Iterator接口:Iterator也是Java集合框架的成员,主要用于遍历Collection集合中的元素
            *方法:boolean hasNext():判断集合里是否还有元素
                        Object next():返回集合里下一个元素
                    void remove();删除集合里上一次next方法返回的元素
        #2.foreach循环遍历
            *说明:
             (1)foreach简化了对数组和集合的遍历,不需要使用下标
            (2)简化了编程,提高了代码的可读性和安全性(不用怕数组越界)
            (3)foreach一般结合泛型使用



  • 相关阅读:
    如果有一天,有个人递过来一支唇油,然后对我说:嘿,弄下你那难受又难看的唇吧!然后我会倾我一生去待这个...
    linux下使用masm通过dosemu及freedos
    回复草儿:呵呵~~嗯在firefox下的展示还不是特别好,有些页面显示不了。叫这个名字的人好像很多哦...
    firefox显示不了QQ空间日志内容的临时解决方法
    语法分析:算术表达式预测分析程序设计
    哈哈,那就找个同名的美女来段美丽传说~链接已做好。
    现在QQ空间不是已经支持其他浏览器的么,昨天我还在linux下用opera看朋友的QQ空间呢。PS:...
    【SQL SERVER】Sql语句使用技巧 优化数据库
    从IL认识关键字(四)
    从IL认识关键字(三)
  • 原文地址:https://www.cnblogs.com/izxcheng/p/4002017.html
Copyright © 2011-2022 走看看