大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學習攻略 Java學習 Java集合框架視頻教程,看完本篇全了解了

Java集合框架視頻教程,看完本篇全了解了

更新時間:2020-05-22 14:49:15 來源:動力節點 瀏覽2167次

Java 集合框架提供了一套性能優良,使用方便的接口和類,java集合框架位于java.util包中, 所以當使用集合框架的時候需要進行導包。下面介紹幾個接口中常用的接口以及實現類。

Java集合框架視頻教程,看完本篇全了解了

List接口的常用實現類

一個 List 是一個元素有序的、可以重復、可以為 null 的集合(有時候我們也叫它“序列”)。

ArrayList

最常用的List接口實現類,底層使用可變長度的動態數組實現。ArrayList有一個初始容量(capacity = 10),當元素數量大于初始容量時進行擴容,新的數組長度 = 舊數組長度 + 舊數組長度 / 2。

因為每個元素都有固定的位置索引,所以根據索引查詢元素的速度非常快。如果在中間插入元素時,由于后面的元素全部要后移一位,所以性能會比較差。

由于沒有做并發訪問控制,所以它是一個非線程安全的集合。允許重復元素或null元素。

LinkedList

List接口的雙向鏈接的實現類,允許NULL元素。它表現上是一個有序的集合,但內存中其實是無序保存。

由于原因,所以它插入的速度會很快,但是查詢一個元素的速度較ArrayList速度慢很多。是一個非線程安全的集合。

Vector

Vector底層使用動態數組實現,默認初始容量為10,可以通過構造方法指定初始容量,同時可以指定擴容時的增量。

擴容規則是指 新容量 = 舊容量 + 擴容增量,若未指定擴容增量則 新容量 = 2 * 舊容量。它的關鍵方法都加了synchronized,所以是一個線程安全的集合。

Set集合接口

如果是實現了Set接口的集合類,具備的特點:無序,不可重復

添加元素 的順序與元素出來的順序是不一致的。

注重獨一無二的性質,該體系集合可以知道某物是否已近存在于集合中,不會存儲重復的元素。

hashSet

HashSet 底層是使用了哈希表來支持的,特點: 存取速度快。

往Hashset添加元素的時候,HashSet會先調用元素的hashCode方法得到元素的哈希值 ,

然后通過元素的哈希值經過移位等運算,就可以算出該元素在哈希表中的存儲位置。

LinkedHashSet

LinkedHashSet 底層使用 LinkedHashMap 來保存所有元素,它繼承與 HashSet,其所有的方法操作上又與 HashSet 相同,因此 LinkedHashSet 的實現上非常簡單,只提供了四個構造方法。

并通過傳遞一個標識參數,調用父類的構造器,底層構造一個 LinkedHashMap 來實現,在相關操作上與父類 HashSet 的操作相同,直接調用父類 HashSet 的方法即可。

treeSet

treeSet 底層是以紅-黑樹的數據結構實現的,默認對元素進行自然排序(String)。

如果在比較的時候兩個對象返回值為0,那么元素重復。

Map接口的常用實現類

Map 提供了一個更通用的元素存儲方法。 Map 集合類用于存儲元素對(稱作“鍵”和“值”),其中每個鍵映射到一個值。

從概念上而言,您可以將 List 看作是具有數值鍵的 Map。 而實際上,除了 List 和 Map 都在定義 java.util 中外,兩者并沒有直接的聯系。

本文將著重介紹核心 Java 發行套件中附帶的 Map,同時還將介紹如何采用或實現更適用于您應用程序特定數據的專用 Map。

HashMap

往HashMap添加元素的時候,首先會調用鍵的hashCode方法得到元素的哈希碼值,然后經過運算 就可以算出該元素在哈希表中的存儲位置。

并允許使用 null 值和 null 鍵。此類不保證映射的順序,特別是它不保證該順序恒久不變。

HashTable

HashTable是同步的(synchronized函數),而HashMap不同步,所以HashTable要慢一些HashTable不接受null鍵和值。

而HashMap接受一個null鍵和無數個null值除了keySet(), entrySet(), values()這些HashMap支持的迭代之外,HashTable還支持基于Enumeration的keys(), elements(), 但是在現在它們的實現都是基于一個實現了Enumeration和Iterator接口的類。

TreeMap

TreeMap也是基于紅黑樹(二叉樹)數據結構實現 的, 特點:會對元素的鍵進行排序存儲。

注意:Set的元素不可重復,如果set元素重復將添加不成功。

Map的鍵不可重復,如果鍵重復將直接覆蓋。

Java集合框架視頻教程,看完本篇全了解了

以上就是動力節點java培訓機構的小編針對“Java集合框架視頻教程,看完本篇全了解了”的內容進行的回答,希望對大家有所幫助,如有疑問,請在線咨詢,有專業老師隨時為你服務。

提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 中文字幕不卡一区 | 一级成人毛片 | 国产精品久久久久久久久夜色 | 2021久久精品国产99国产 | 久久久久久久久久久福利观看 | 老妇色 | 青青国产成人久久91 | 色综合久久98天天综合 | 久久久国产高清 | 国产亚洲精品福利 | 美女叫春 | 日本欧美三级 | 欧美中文字幕一二三四区 | 视频一区国产 | 91伦理视频| 麻豆亚洲精品一区二区 | 在线五月婷婷 | 久久99精品视香蕉蕉 | 尹人香蕉久久99天天 | 亚洲日本一区二区三区高清在线 | 在线观看男女爱视频网站 | 日本中文字幕在线视频 | 欧美综合激情 | 国产高清精品自在线看 | 日日夜夜操视频 | 亚洲小说春色综合另类网蜜桃 | 五月激情综合网 | 日本在线播放一区 | 精品少妇一区二区三区视频 | 国产精品成在线观看 | 小视频国产 | 四虎影院免费观看 | 日韩精品中文字幕一区三区 | 2020国产精品视频 | 免费福利入口在线观看 | 99久久免费国产精品特黄 | 国产美女午夜精品福利视频 | 色桃花网 | 久久影院一区 | 日韩欧美伊人久久大香线蕉 | 91视频入口 |