日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

编程体系结构(03):Java集合容器

發布時間:2025/3/17 java 18 豆豆
生活随笔 收集整理的這篇文章主要介紹了 编程体系结构(03):Java集合容器 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

本文源碼:GitHub·點這里 || GitEE·點這里

一、集合容器簡介

集合容器是Java開發中最基礎API模塊,通常用來存儲運行時動態創建的元素,基本特點如下:

  • 泛型特點,存儲任意類型對象;
  • 動態擴容,存儲任意數量對象;

這里對存儲數量是受到程序和內存等環境制約的,從List的get()方法中可以看出,index的范圍是Integer.MAX_VALUE。

二、API體系

三大核心接口:List、Set繼承Collection, Map獨立接口

List與Set體系

List體系核心API:ArrayList,LinkedList、Vector

Set體系核心API:HashSet、TreeSet、LinkedHashSet

Queue隊列API:PriorityQueue、LinkedHashSet

Map體系

Map體系核心API:HashMap、LinkedHashMap、TreeMap、Hashtable

三、基礎容器詳解

1、核心內容

  • 元素存儲,增刪改查判斷等基礎用法
  • API方法中線程安全問題
  • 容器初始化大小與動態擴容機制
  • 底層數據結構特點
  • 同一接口或者不同接口體系容器對比

基本熟練使用并理解集合容器,需要知道如上幾塊內容:API基礎用法,線程安全問題;容器大小與擴容;結構特點,數組、鏈表、哈希表;

2、API體系詳解

Collection:集合容器的根接口,定義公共方法;

List體系

  • ArrayList

維護Object數組實現,特點:查詢快,增刪慢,非線程安全,所以效率高。

  • LinkedList

底層維護鏈表數據結構實現,特點:查詢慢,增刪快,非線程安全,所以效率高。

  • Vector

底部維護Object數組,實現和ArrayList一樣,但是Vector是線程安全,效率低。

Set體系

  • HashSet

底層是使用了哈希表來支持的,特點:存取速度快,元素唯一且無序。

  • LinkedHashSet

底層數據結構是鏈表和哈希表,鏈表保證元素有序性,哈希表保證元素唯一性,非線程安全。

  • TreeSet

數據結構是紅黑樹,如果元素具備自然順序的特性,那么就按照元素自然順序的特性進行排序,或者基于比較器自定義排序。

Map體系:

Map接口的實現類,具備的特點:存儲的數據都是以鍵值對的方式,鍵不可以重復,值可重復。

  • HashMap

底層使用hashCode表來實現向HashMap中添加元素,允許使用null值和null鍵,不保證元素的順序固定。

  • TreeMap

TreeMap:基于二叉樹的數據結構實現的,會對具備自然特性的鍵進行排序存儲:元素的鍵具備自然特性,直接排序存儲;不具備自然特性,實現Comparable接口,在ComparaTo中定義排序規則。

  • HashTable

線程安全,相對效率低,不允許使用null值。

3、容器遍歷

  • 基于for、foreach、while流程控制
  • Iterable迭代器核心接口
  • Lambda表達式:遍歷、分組、查詢

四、源代碼地址

GitHub·地址 https://github.com/cicadasmile GitEE·地址 https://gitee.com/cicadasmile

推薦閱讀:架構設計系列

標題
架構設計:單服務.集群.分布式,基本區別和聯系
架構設計:分布式業務系統中,全局ID生成策略
架構設計:分布式系統調度,Zookeeper集群化管理
架構設計:接口冪等性原則,防重復提交Token管理
架構設計:緩存管理模式,監控和內存回收策略
架構設計:異步處理流程,多種實現模式詳解
架構設計:高并發流量削峰,共享資源加鎖機制
架構設計:分布式服務,庫表拆分模式詳解
架構設計:分布式事務①概念簡介和基礎理論
架構設計:基于電商交易流程,圖解TCC事務分段提交
架構設計:基于消息中間件,圖解柔性事務一致性

總結

以上是生活随笔為你收集整理的编程体系结构(03):Java集合容器的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。