zoukankan      html  css  js  c++  java
  • 关于set,list,map的理解

      java集合分为三种Set,List ,Map

    (1)Collection:首先set跟list(接口)是兄弟,爹是collection,同时list又有儿子ArrayList,LinkedList,Vector。

    Set有儿子HsahSet,TreeSet。

    (2)Map:Map有三个儿子HashMap,HashTable,TreeMap。

    一.来说Collection

    1.有人想可以有一个自动扩展且无序的数组,所以List

    2.有的人想有没有重复的数组,所以有了set

    3.有人想有自动排序的组数,所以有了TreeSet,TreeList,Tree**

    1)儿子List

    ArrayList:是一个可改变大小的数组.当更多的元素加入到ArrayList中时,其大小将会动态地增长.内部的元素可以直接通过get与set方法进行访问,因为ArrayList本质上就是一个数组。

    LinkedList:是一个双链表,在添加和删除元素时具有比ArrayList更好的性能.但在get与set方面弱于ArrayList.

    Vector:和ArrayList类似,但属于强同步类。如果你的程序本身是线程安全的(thread-safe,没有在多个线程之间共享同一个集合/对象),那么使用ArrayList是更好的选择。正常情况下,大多数的Java程序员使用ArrayList而不是Vector,因为同步完全可以由程序员自己来控制。

    更详细请参考http://www.2cto.com/kf/201312/261556.html

    2)儿子Set

    Set是最简单的一种集合。集合中的对象不按特定的方式排序,并且没有重复对象。 Set接口主要实现了两个实现类:

    HashSet: HashSet类按照哈希算法来存取集合中的对象,存取速度比较快 

    TreeSet :TreeSet类实现了SortedSet接口,能够对集合中的对象进行排序。

    1)儿子Map

    预知后事如何,请听下回分解。

  • 相关阅读:
    路径
    aspx.cs调用js方法
    计算字符串中每种字母出现的次数
    [转载]获取2个集合List<T>的共同元素
    [转载]行列转换
    [转载]UNION合并查询
    [转载]Case When Then
    [转载]CAST-CONVERT两个函数进行类型转换时的异同点
    [转载]404错误页面设置
    [转载]JQ小知识
  • 原文地址:https://www.cnblogs.com/wojiaoxusanri/p/5830574.html
Copyright © 2011-2022 走看看