Java基礎:集合List、Map、Set(超詳細版)

集合體系概述

在這里插入圖片描述
在這里插入圖片描述

Collection常用方法

在這里插入圖片描述
補充:addAll()

Collection的遍歷方式

迭代器

在這里插入圖片描述
在這里插入圖片描述

增強for(空集合可以,null不可以)

在這里插入圖片描述
在這里插入圖片描述

lambda

在這里插入圖片描述

集合對象存儲對象原理

在這里插入圖片描述

遍歷方式的區別

在這里插入圖片描述

List集合

特點、特有方法

在這里插入圖片描述

遍歷方式

(同上)

ArrayList底層原理

在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述

LinkedList底層原理

在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述

手寫鏈表

/*** 手寫鏈表*/
public class MyLinkedList<E> {private int size = 0;Node<E> first;public static class Node<E> {E item;Node<E> next;public Node(E item, Node<E> next){this.item = item;this.next = next;}}public boolean add(E e) {Node<E> newNode = new Node<>(e, null);if(first == null) {first = newNode;} else {Node<E> temp = first;while(temp.next != null) {temp = temp.next;}temp.next = newNode;}size++;return true;}@Overridepublic String toString() {StringJoiner s = new StringJoiner(",", "[", "]");Node<E> temp = first;while(temp != null) {s.add(temp.item + "");temp = temp.next;}return s.toString();}public int size(){return size;}}class Test {public static void main(String[] args) {MyLinkedList<String> list = new MyLinkedList<>();list.add("1號客人");list.add("2號客人");list.add("3號客人");list.add("4號客人");System.out.println(list);}
}

Set集合

特點

在這里插入圖片描述

HashSet底層原理

在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述

了接下數據結構(樹)

在這里插入圖片描述
查詢性能提高:排序
在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述

去重機制

在這里插入圖片描述
在這里插入圖片描述

LinkedHashSet底層原理-有序

在這里插入圖片描述

TreeSet底層原理-排序

在這里插入圖片描述
在這里插入圖片描述

*優先選擇

在這里插入圖片描述

Map集合

概述

在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述

常用方法

在這里插入圖片描述

遍歷方法

在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述

HashMap-原理

在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述

LinkedHashMap-原理

在這里插入圖片描述

TreeMap-原理

在這里插入圖片描述

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/75605.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/75605.shtml
英文地址,請注明出處:http://en.pswp.cn/web/75605.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Elasticsearch 全面解析

Elasticsearch 全面解析 前言一、簡介核心特性應用場景 二、核心原理與架構設計1. 倒排索引&#xff08;Inverted Index&#xff09;2. 分片與副本機制&#xff08;Sharding & Replication&#xff09;3. 節點角色與集群管理 三、核心特點1. 靈活的查詢語言&#xff08;Que…

【2】k8s集群管理系列--包應用管理器之helm(Chart語法深入應用)

一、Chart模板&#xff1a;函數與管道 常用函數&#xff1a; ? quote&#xff1a;將值轉換為字符串&#xff0c;即加雙引號 ? default&#xff1a;設置默認值&#xff0c;如果獲取的值為空則為默認值 ? indent和nindent&#xff1a;縮進字符串 ? toYaml&#xff1a;引用一…

JVM 字節碼是如何存儲信息的?

JVM 字節碼是 Java 虛擬機 (JVM) 執行的指令集&#xff0c;它是一種與平臺無關的二進制格式&#xff0c;在任何支持 JVM 的平臺上都可運行的Java 程序。 字節碼存儲信息的方式&#xff0c;主要通過以下幾個關鍵組成部分和機制來實現&#xff1a; 1. 指令 (Opcodes) 和 操作數 …

基于51單片機語音實時采集系統

基于51單片機語音實時采集 &#xff08;程序&#xff0b;原理圖&#xff0b;PCB&#xff0b;設計報告&#xff09; 功能介紹 具體功能&#xff1a; 系統由STC89C52單片機ISD4004錄音芯片LM386功放模塊小喇叭LCD1602按鍵指示燈電源構成 1.可通過按鍵隨時選擇相應的錄音進行播…

關于 Java 預先編譯(AOT)技術的詳細說明,涵蓋 GraalVM 的配置、Spring Boot 3.x 的集成、使用示例及優缺點對比

以下是關于 Java 預先編譯&#xff08;AOT&#xff09;技術的詳細說明&#xff0c;涵蓋 GraalVM 的配置、Spring Boot 3.x 的集成、使用示例及優缺點對比&#xff1a; 1. 預先編譯&#xff08;AOT&#xff09;技術詳解 1.1 核心概念 AOT&#xff08;Ahead-of-Time&#xff09…

【ROS2】行為樹:BehaviorTree

1、簡介 與狀態機不同,行為樹強調執行動作,而不是狀態之間的轉換。 行為樹是可組合的。可以重復使用簡單的行為來構建復雜的行為。 在游戲領域,行為樹已經比較流行了。主要用于維護游戲角色的各種動作和狀態。 ROS2的導航框架Navigation2中引入了行為樹來組織機器人的工作流…

Centos7.9 升級內核,安裝RTX5880驅動

系統鏡像下載 https://vault.centos.org/7.9.2009/isos/x86_64/CentOS-7-x86_64-DVD-2009.iso 系統安裝步驟省略 開始安裝顯卡驅動 遠程登錄查看內核 [root192 ~]# uname -a Linux 192.168.119.166 3.10.0-1160.el7.x86_64 #1 SMP Mon Oct 19 16:18:59 UTC 2020 x86_64 x8…

多層感知機與全連接神經網絡關系解析

感知機&#xff08;Perceptron&#xff09;、多層感知機&#xff08;MLP&#xff0c;Multilayer Perceptron&#xff09;和全連接神經網絡&#xff08;FCNN&#xff0c;Fully Connected Neural Network&#xff09;是神經網絡發展過程中密切相關的概念&#xff0c;但它們有明確…

解析醫療器械三大文檔:DHF、DMR與DHR

醫療器械的 DHF、DMR 和 DHR 是質量管理體系&#xff08;QMS&#xff09;中的核心文件&#xff0c;貫穿產品全生命周期&#xff0c; 確保醫療器械的安全性、有效性和合規性。 一、三大文件的定義與法規依據 縮寫全稱法規依據&#xff08;以 FDA 為例&#xff09;核心目的DHF…

netty啟用websocket的壓縮機制

netty啟用websocket的壓縮機制 package com.aerotop.connector.websocket.base;import io.netty.channel.ChannelInitializer; import io.netty.channel.ChannelPipeline; import io.netty.channel.socket.SocketChannel; import io.netty.handler.codec.compression.JZlibDec…

可能存在特殊情況,比如控制臺顯示有延遲、緩沖問題等影響了顯示順序。

從控制臺輸出看&#xff0c;正常邏輯應是先執行 System.out.println(" 未處理異常演示 "); 輸出對應文本&#xff0c;再因 arr 為 null 訪問 length 觸發 NullPointerException 輸出異常信息。可能存在特殊情況&#xff0c;比如控制臺顯示有延遲、緩沖問題等影響…

第一節:React 基礎篇-React虛擬DOM原理及Diff算法優化策略

必考點&#xff1a;虛擬DOM樹對比&#xff08;同級比較、Key的作用、組件類型判斷&#xff09; 延伸&#xff1a;React 18中并發更新對Diff算法的影響 React虛擬DOM原理及Diff算法優化策略 虛擬DOM核心原理 概念&#xff1a; ? 虛擬DOM&#xff08;Virtual DOM&#xff09;…

Java spring mybatis面試題(200道),八股文

Java面試題 通過網盤分享的文件&#xff1a;面試題等2個文件 鏈接: https://pan.baidu.com/s/1Xw0PzkfAmL8uesYBvrW2-A?pwdpebt 提取碼: pebt mybatis相關 1、 什么是Mybatis&#xff1f; … 2 2、 Mybaits 的優點&#xff1a; … 2 3、 MyBatis 框架的缺點&#xff1a; ……

windows使用Python調用7-Zip【按大小分組】壓縮文件夾中所有文件

使用Python調用7-Zip【按大小分組】壓縮文件夾中所有文件 問題描述&#xff1a;方法前提條件任務完整代碼示例代碼如何工作&#xff1f; 問題描述&#xff1a; 我現在想把文件夾下的所有內容上傳到網盤&#xff0c;但是這個文件夾下的素材內容很多&#xff0c;使用分卷壓縮的話…

《Python星球日記》第26天:Matplotlib 可視化

名人說&#xff1a;路漫漫其修遠兮&#xff0c;吾將上下而求索。—— 屈原《離騷》 創作者&#xff1a;Code_流蘇(CSDN)&#xff08;一個喜歡古詩詞和編程的Coder&#x1f60a;&#xff09; 訂閱專欄&#xff1a;《Python星球日記》 目錄 一、Matplotlib 簡介1. 什么是 Matplo…

第1章 對大型語言模型的介紹

人類正處在一個關鍵轉折點。自2012年起&#xff0c;基于深度神經網絡的人工智能系統研發進入快速通道&#xff0c;將這一技術推向了新高度&#xff1a;至2019年底&#xff0c;首個能夠撰寫與人類文章真假難辨的軟件系統問世&#xff0c;這個名為GPT-2&#xff08;生成型預訓練變…

dcsdsds

我將為您在頁面頂部添加歡迎內容&#xff0c;同時保持整體風格的一致性。以下是修改后的代碼&#xff0c;主要修改了模板部分和對應的樣式&#xff1a; vue 復制 <template><div class"main-wrapper"><!-- 新增歡迎部分 --><div class"…

學習MySQL的第八天

海到無邊天作岸 山登絕頂我為峰 一、數據庫的創建、修改與刪除 1.1 引言 在經過前面七天對于MySQL基本知識的學習之后&#xff0c;現在我們從基本的語句命令開始進入綜合性的語句的編寫來實現特定的需求&#xff0c;從這里開始需要我們有一個宏觀的思想&…

Linux-內核驅動-中斷-key

DEV_NAME&#xff1a;設備名稱。 wg&#xff1a;等待隊列頭&#xff0c;用于同步。 condition&#xff1a;條件變量&#xff0c;用于等待和喚醒。 中斷處理函數 irq_handler&#xff1a;處理中斷請求&#xff0c;設置條件變量并喚醒等待隊列中的進程。 文件操作函數 open…

asm匯編源代碼之按鍵處理相關函數

提供5個子程序: 1. 發送按鍵 sendkey 2. 檢測是否有按鍵 testkey 3. 讀取按鍵 getkey 4. 判斷鍵盤緩沖區是否為空 bufempty 5. 判斷鍵盤緩沖區是否已滿 buffull 具體功能及參數描述如下 sendkey proc  far ; axcharcode testkey proc  far ; out: ;   zf1 buff empt…