一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - Java Collections集合繼承結構圖_動力節點Java學院整理

Java Collections集合繼承結構圖_動力節點Java學院整理

2020-09-21 15:25動力節點 Java教程

這篇文章主要介紹了Java Collections集合繼承結構圖_動力節點Java學院整理,需要的朋友可以參考下

面向對象語言對事物的體現都是以對象的形式,所以為了方便對多個對象的操作,就對對象進行存儲,集合就是存儲對象最常用的一種方式。

數組雖然也可以存儲對象,但長度是固定的;集合長度是可變的,數組中可以存儲基本數據類型,集合只能存儲對象。
集合類的特點:集合只用于存儲對象,集合長度是可變的,集合可以存儲不同類型的對象。 

集合框架圖  

Java Collections集合繼承結構圖_動力節點Java學院整理

Java Collections集合繼承結構圖_動力節點Java學院整理

Collection (集合的最大接口)繼承關系

  ——List 可以存放重復的內容
  ——Set  不能存放重復的內容,所以的重復內容靠hashCode()和equals()兩個方法區分
  ——Queue  隊列接口
  ——SortedSet  可以對集合中的數據進行排序

Collection定義了集合框架的共性功能。

1,添加

add(e);
addAll(collection);

2,刪除

remove(e);
removeAll(collection);
clear();

3,判斷。

contains(e);
isEmpty();

4,獲取

iterator();
size();

5,獲取交集。

retainAll();

6,集合變數組。

toArray();

*add方法的參數類型是Object。以便于接收任意類型對象。
*集合中存儲的都是對象的引用(地址)

List的常用子類

List:

特有方法。凡是可以操作角標的方法都是該體系特有的方法。


add(index,element);
addAll(index,Collection);

remove(index);

set(index,element);

get(index):
subList(from,to);
listIterator();
int indexOf(obj):獲取指定元素的位置。
ListIterator listIterator();
——ArrayList   線程不安全,查詢速度快
——Vector  線程安全,但速度慢,已被ArrayList替代
——LinkedList  鏈表結果,增刪速度快

Set接口

Set:元素是無序(存入和取出的順序不一定一致),元素不可以重復。

|——HashSet:底層數據結構是哈希表。是線程不安全的。不同步。

  HashSet是如何保證元素唯一性的呢?

  是通過元素的兩個方法,hashCode和equals來完成。

  如果元素的HashCode值相同,才會判斷equals是否為true。

  如果元素的hashcode值不同,不會調用equals。

  注意,對于判斷元素是否存在,以及刪除等操作,依賴的方法是元素的hashcode和equals方法。

——TreeSet:

有序的存放:TreeSet  線程不安全,可以對Set集合中的元素進行排序

通過compareTo或者compare方法來保證元素的唯一性,元素以二叉樹的形式存放。

集合的輸出

4種常見的輸出方式

  ——Iterator: 迭代輸出,使用最多的輸出方式
  ——ListIterator: Iterator的子接口,專門用于輸出List中的內容
  ——Enumeration
  ——foreach

在迭代時,不可以通過集合對象的方法操作集合中的元素。

因為會發生ConcurrentModificationException異常。

所以,在迭代器時,只能用迭代器的放過操作元素,可是Iterator方法是有限的,

只能對元素進行判斷,取出,刪除的操作,

如果想要其他的操作如添加,修改等,就需要使用其子接口,ListIterator。

該接口只能通過List集合的listIterator方法獲取。

Map接口

Correction、Set、List接口都屬于單值的操作,而Map中的每個元素都使用key——>value的形式存儲在集合中。

Map集合:該集合存儲鍵值對。一對一對往里存。而且要保證鍵的唯一性。

1,添加。

put(K key, V value)
putAll(Map<? extends K,? extends V> m)

2,刪除。

clear()
remove(Object key)

3,判斷。

containsValue(Object value)
containsKey(Object key)
isEmpty()

4,獲取。

get(Object key)
size()
values()
entrySet()
keySet()

8、Map接口的常用子類

Map

|HashMap:底層是哈希表數據結構,允許使用 null 值和 null 鍵,該集合是不同步的。將hashtable替代,jdk1.2.效率高。

|--TreeMap:底層是二叉樹數據結構。線程不同步。可以用于給map集合中的鍵進行排序。

集合工具類

Collections:集合框架的工具類。里面定義的都是靜態方法。

Collections和Collection有什么區別?

Collection是集合框架中的一個頂層接口,它里面定義了單列集合的共性方法。

它有兩個常用的子接口,

List:對元素都有定義索引。有序的。可以重復元素。

Set:不可以重復元素。無序。

Collections是集合框架中的一個工具類。該類中的方法都是靜態的

提供的方法中有可以對list集合進行排序,二分查找等方法。

通常常用的集合都是線程不安全的。因為要提高效率。

如果多線程操作這些集合時,可以通過該工具類中的同步方法,將線程不安全的集合,轉換成安全的。

以上所述是小編給大家介紹的Java Collections集合繼承結構圖_動力節點Java學院整理,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對服務器之家網站的支持!

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 久草青青在线 | 色综合网天天综合色中文男男 | 国产视频一区 | 女人被男人躁得好爽免费视频 | 2018高清国产一道国产 | 色先锋影音先锋 | 免费视频 | 国产精品成人麻豆专区 | 日韩精品视频福利资源站 | 国产精品成人扳一级aa毛片 | 日本大片免aaa费观看视频 | 日本黄色影院 | 2021久久| 99久久999久久久综合精品涩 | 精品国产自在天天线2019 | 成年人免费观看视频网站 | 日本人在线看片 | 韩国一大片a毛片女同 | 国产福利一区二区三区四区 | 亚洲精品视频久久 | 插入肥臀| 国产精品拍拍拍福利在线观看 | 成年视频在线播放 | 久久久无码精品无码国产人妻丝瓜 | 我的年轻漂亮继坶三级 | 欧亚专线欧洲m码可遇不可求 | 妇女澡堂淋浴性 | 日本人妖在线 | porno movie hd高清| 波多野结衣两女调教 | 国产成人精品视频频 | 满溢游泳池免费土豪全集下拉版 | 免费理伦片手机在线播放 | 91在线老王精品免费播放 | 香蕉免费一区二区三区 | 欧美另类亚洲 | 久久免费看少妇级毛片蜜臀 | 亚洲国产精品嫩草影院久久 | 校花的第一次好紧好爽 | 午夜在线观看免费观看 视频 | 日本又黄又裸一级大黄裸片 |