最新国产好看的视频,伊人天堂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)學(xué)生信息管理系統(tǒng)

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

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

    詳解Spring學(xué)習(xí)之聲明式事務(wù)管理

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

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

    定長隊列是一種有限容量的隊列,對于某些應(yīng)用場景非常有用,本文主要介紹了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微服務(wù)場景下apollo加載過程解析

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

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

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

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

最新評論

崇左市| 文昌市| 台江县| 泾阳县| 安陆市| 长汀县| 峨眉山市| 博爱县| 宽城| 响水县| 阳西县| 印江| 太谷县| 怀宁县| 平原县| 新密市| 高台县| 香格里拉县| 朝阳市| 江阴市| 唐山市| 子长县| 南宁市| 绵阳市| 闸北区| 沙雅县| 合作市| 大理市| 漳州市| 永寿县| 南陵县| 思南县| 孙吴县| 九寨沟县| 延寿县| 车险| 铜鼓县| 军事| 九台市| 咸宁市| 绥中县|