歡迎來到瑞文網!

    java集合知識點總結

    學習總結 時間:2018-03-08 我要投稿
    【www.givethemtheworld.com - 學習總結】

      java是計算機編程的入門級,但也是一個有一定難度的考點,下面java集合知識點總結下面是小編推薦給大家的,希望能帶給大家幫助。

      java集合知識點總結

      Set:不區分元素的順序,不允許出現重復的值

      list:區分元素的順序,且允許出現重復的值

      map:采用key——values的,不允許有重復的鍵,每個鍵最多對應一個值

      java集合只能保存引用類型的數據,是對象的引用

      Collection接口描述set和list集合類型的根接口

      相關方法:

      add()如果增加重復元素,則增加失敗,返回false

      contains()判斷是否包含有某個元素

      iterator()返回成一個迭代器

      List可以對元素的插入位置進行精確控制,根據元素索引訪問元素等功能

      set(index,elemetn)修改指定索引下的元素

      Map關系集的形式查看某個映射的內容

      put(objectkey,objectvalues)增加一個新的值

      get(objectkey)查找key上面的值

      SetkeySet()將所有的key返回到一個set中

      Collectionvalues()將所有的值返回到一個collection集合中

      Collection——set——hashset/treeset

      Collection--list——Arraylist/vector——Stack(棧)

      Map——hashmap/Treemap/hashtable——properties

      StringTokenizer——Enumeration(不是很常用)

      ArrayList類實現了list接口,用于表述長度可度的數組列表

      他允許取值為null,除實現了list接口的所有功能外,還有以下方法

      ArrayList()創建一個容量為10的null的列表

      ArrayList()創建一個指定長度的null的列表

      ensureCapacity(intminCapacity)增加此ArrayList實例的容量,以確保它至少能夠容納最小容量參數所指定的元素數。

      trimToSize()將此ArrayList實例的容量調整為列表的當前大小(也就是說,出除后面為null的值)

      相關實例請查看:http://hi.bccn.net/space-447825-do-blog-id-16964.html

      Vector也實現了list接口,其描述的也是可變長度的對象數組

      是同步(線程安全的),運行效率要低一些,主要用于多線程環境中,而arryalist是不同步的,適合在單純種環境中使用

      vector()創建一個長度為10的vector容器

      elementAt(intindex)得到指定的值

      addElement(Objectojb)增加值

      removeElementAt(intindex)移除指定的值

      insertElecentAt(Eobj,index)在指定位置查入相關的值

      removeElement(objectobj)刪除值,如果有重復的只刪除第一次出現的

      Object[]toArray()將當前集合中的元素全部返回到一個數組中

      相關實例請查看:http://hi.bccn.net/space-447825-do-blog-id-16965.html

      Stack繼承了vector,對應了數據結構中的“后進先出”存儲和操作數據結象棧

      Stack()創建一個空的棧

      push()在當前棧中壓入一個數據,把項壓入堆棧頂部。

      pop()移除堆棧頂部的對象,并作為此函數的值返回該對象。

      peek()查看堆棧頂部的對象,但不從堆棧中移除它。

      clear()清空棧

      search(objecto)查看棧中的位置,返回最進的一個。以1為基數

      相關實例請查看:http://hi.bccn.net/space-447825-do-blog-id-16966.html

      Iterator接口描述的是以統一方式對各種集合元素遍歷/迭代工具,也稱"迭代器"

      允許在遍歷過程中移除集合中的元素

      hasNext()如果仍有元素可以迭代,則返回true

      next()返回迭代的下一個元素

      remove()從迭代器指向的collection中移除迭代器返回的最后一個元素

      相關實例請查看:http://hi.bccn.net/space-447825-do-blog-id-16967.html

      HashSet類實現了set接口,描述典型的set集合結構

      不允許出現重復元素,不保證集合中元素的序

      允許包含值為null的元素,但最多只能有一個,

      相關實例請查看http://hi.bccn.net/space-447825-do-blog-id-16968.html

      TreeSet類也實現了Set,它描述的是set的一種變體——可以實現排序功能的集合

      將對象元素添加到TreeSet集中時會自動按照某種比較規則將其插入到有序的對象序列中

      以保證TreeSet集合元素組成的對象序列時刻按照“升序”排列

      相關實例請看:http://hi.bccn.net/space-447825-do-blog-id-16969.html

      Comparable接口中定義的compareTo()方法,實現對整體排序所需的比較邏輯

      排序稱為自然排序,和自然比較

      如果重寫了,compareTo()那么要保證equals()保持一致

      相關實例請查看:http://hi.bccn.net/space-447825-do-blog-id-16971.html

      HashMap實現了Map接口,基于哈希表的實現了前述的映射集合結構

      不保證其中元素的先后順序,并且允許null值和null鍵

      當集合中不存在當前檢索的,get()返回的是空,而不會報錯

      影響hashMap性能的兩個參數:初始容量和加載因子

      相關實例請看:http://hi.bccn.net/space-447825-do-blog-id-16972.html

      Hashtable也是采用鍵和值,鍵和值不允許為null,是同步的,即線程安全的,效率相對要低一些,用于多線程,用法與hashmap完全一樣

      Enumeration接口:作用與iterator接口類似,但只提供遍歷vector和hashtable(及子類properties)且不支持集合元素的移除操作些接口不是很常用,這里就不給實例了

      Collections定義了多種集合操作的方法,實現對集合元素排序,取極值,批是拷貝,集合結構轉換,循環移位以及匹配檢查等功能

      相關方法:

      sort(Listlist)根據元素的自然順序對指定列表按升序進行排序。

      reverse(Listlist)反轉指定列表中元素的順序。

      shuffle(Listlist)使用默認隨機源對指定列表進行置換。

      copy(Listdest,Listsrc)將所有元素從一個列表復制到另一個列表。

      list(Enumeratione)返回一個數組列表,它按返回順序包含指定枚舉返回的元素

      frequency(Collectionc,Objecto)返回指定collection中等于指定對象的元素數

      max(Collectioncoll)根據指定比較器產生的順序,返回給定collection的最大元素

      rotate(Listlist,intdistance)根據指定的距離輪換指定列表中的元素。

      相關實例請查看:http://hi.bccn.net/space-447825-do-blog-id-16973.html

      Arrays類定義了多種數組操作方法,實現了對數組元素排序,填充,轉換為列表或字符串形式、增強的檢索和深度比較等功能

      asList()返回一個受指定數組支持的固定大小的列表

      sort()對指定的byte型數組按數字升序進行排序

      binarySearch(int[]a,intkey)使用二分搜索法來搜索指定的int型數組,以獲得指定的值。

      toString(Object[]a)返回指定數組內容的字符串表示形式。

    熱門文章
    国产一级a爱做免费播放_91揄拍久久久久无码免费_欧美视频在线播放精品a_亚洲成色在线综合网站免费

      日韩AV一区二区三区五月天 | 久99久精品视频在线播放 | 日本在线高清不卡免v中文字幕 | 中文字幕人成不卡视频在线 | 日韩欧美精品一本二本道一区 | 亚洲欧美日韩国产精品一区二区 |