最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java中的LinkedHashSet解析

 更新時間:2023年11月01日 08:47:40   作者:興趣使然的程序猿  
這篇文章主要介紹了Java中的LinkedHashSet解析,與HashSet不同的是,LinkedHashSet在內(nèi)部使用了一個雙向鏈表來維護元素的順序,因此它可以保持元素的插入順序,這使得LinkedHashSet在需要保持元素順序的場景下非常有用,需要的朋友可以參考下

LinkedHashSet

LinkedHashSet用的也比較少,其也是基于Set的實現(xiàn)。

1 LinkedHashSet繼承關(guān)系

在這里插入圖片描述

和HashSet一樣,其也是Set接口的實現(xiàn)類,并且是HashSet的子類。

2 LinkedHashSet源碼

package java.util;
public class LinkedHashSet<E>
    extends HashSet<E>
    implements Set<E>, Cloneable, java.io.Serializable {
    private static final long serialVersionUID = -2851667679971038690L;
    public LinkedHashSet(int initialCapacity, float loadFactor) {
    	//調(diào)用HashSet的構(gòu)造方法
        super(initialCapacity, loadFactor, true);
    }
    public LinkedHashSet(int initialCapacity) {
        super(initialCapacity, .75f, true);
    }
    public LinkedHashSet() {
        super(16, .75f, true);
    }
    public LinkedHashSet(Collection<? extends E> c) {
        super(Math.max(2*c.size(), 11), .75f, true);
        addAll(c);
    }
    @Override
    public Spliterator<E> spliterator() {
        return Spliterators.spliterator(this, Spliterator.DISTINCT | 	
Spliterator.ORDERED);
    }
}

其操作方法和HashSet完全一樣,那么二者區(qū)別是什么呢?

1.首先LinkedHashSet是HashSet的子類。

2.LinkedHashSet中用于存儲值的實現(xiàn)LinkedHashMap,而HashSet使用的是HashMap。LinkedHashSet中調(diào)用的父類構(gòu)造器,可以看到其實列是一個LinkedHashMap。

HashSet(int initialCapacity, float loadFactor, boolean dummy) {
    map = new LinkedHashMap<>(initialCapacity, loadFactor);
}

LinkedHashSet的實現(xiàn)很簡單,更深入的了解需要去看LinkedHashMap的實現(xiàn),對LinkedHashMap的解析將單獨提出。

到此這篇關(guān)于Java中的LinkedHashSet解析的文章就介紹到這了,更多相關(guān)LinkedHashSet解析內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • java對接第三方接口的3種常用方式

    java對接第三方接口的3種常用方式

    java語言中調(diào)用第三方接口,可以使用的方法有很多,下面這篇文章主要給大家介紹了關(guān)于java對接第三方接口的3種常用方式,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2024-04-04
  • java控制臺實現(xiàn)學生信息管理系統(tǒng)

    java控制臺實現(xiàn)學生信息管理系統(tǒng)

    這篇文章主要為大家詳細介紹了java控制臺實現(xiàn)學生信息管理系統(tǒng),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-02-02
  • 詳解Spring學習之聲明式事務管理

    詳解Spring學習之聲明式事務管理

    這篇文章主要介紹了詳解Spring學習之聲明式事務管理,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-07-07
  • java定長隊列的實現(xiàn)示例

    java定長隊列的實現(xiàn)示例

    定長隊列是一種有限容量的隊列,對于某些應用場景非常有用,本文主要介紹了java定長隊列的實現(xiàn)示例,具有一定的參考價值,感興趣的可以了解一下
    2024-02-02
  • SpringSecurity自定義AuthenticationProvider無法@Autowire的解決

    SpringSecurity自定義AuthenticationProvider無法@Autowire的解決

    這篇文章主要介紹了SpringSecurity自定義AuthenticationProvider無法@Autowire的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-12-12
  • mybatis-plus?實現(xiàn)查詢表名動態(tài)修改的示例代碼

    mybatis-plus?實現(xiàn)查詢表名動態(tài)修改的示例代碼

    通過MyBatis-Plus實現(xiàn)表名的動態(tài)替換,根據(jù)配置或入?yún)⑦x擇不同的表,本文主要介紹了mybatis-plus?實現(xiàn)查詢表名動態(tài)修改的示例代碼,具有一定的參考價值,感興趣的可以了解一下
    2025-03-03
  • Java 中的位運算與移位運算詳解

    Java 中的位運算與移位運算詳解

    這篇文章主要為大家介紹了Java 中的位運算與移位運算,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2021-12-12
  • 原生Java操作兔子隊列RabbitMQ

    原生Java操作兔子隊列RabbitMQ

    這篇文章主要介紹了原生Java操作兔子隊列RabbitMQ,MQ全稱為Message?Queue,即消息隊列,“消息隊列”是在消息的傳輸過程中保存消息的容器,需要的朋友可以參考下
    2023-05-05
  • spring?boot微服務場景下apollo加載過程解析

    spring?boot微服務場景下apollo加載過程解析

    apollo?是一個開源的配置中心項目,功能很強大,apollo?本身的配置項并不復雜,但是因為配置的路徑特別多,非常容易搞混了,?所以本文試圖聚焦?spring-boot?的場景,在?spring-boot?微服務場景下,搞清楚?apollo-client的加載過程
    2022-02-02
  • Java聊天室之實現(xiàn)一個服務器與多個客戶端通信

    Java聊天室之實現(xiàn)一個服務器與多個客戶端通信

    這篇文章主要為大家詳細介紹了Java簡易聊天室之實現(xiàn)一個服務器與多個客戶端通信,文中的示例代碼講解詳細,具有一定的借鑒價值,需要的可以了解一下
    2022-10-10

最新評論

工布江达县| 敖汉旗| 溧水县| 台安县| 上林县| 乌兰察布市| 临沂市| 永登县| 蓝山县| 安阳市| 隆德县| 西城区| 彰化市| 报价| 农安县| 郓城县| 南城县| 康马县| 安乡县| 虹口区| 东光县| 内江市| 定西市| 祁阳县| 古浪县| 西华县| 常州市| 周口市| 武山县| 渭源县| 武隆县| 泾阳县| 碌曲县| 桃江县| 泰顺县| 东乌珠穆沁旗| 湘乡市| 横山县| 林芝县| 辽源市| 芦山县|