從零開始的Java知識(下)

從零開始的Java知識

  • 雙列數據集合(Day1)
    • Map

雙列數據集合(Day1)

Map

注意點:

  1. Map一次加入一個key-value
  2. 一個key對應一個value
  3. key與key之間是不重復的
  4. key-value被稱為鍵值對,鍵值對對象或者是entry對象

常用方法案例:

import java.util.HashMap;
import java.util.Map;public class MapTest {public static void main(String[] args) {Map<String,String> map = new HashMap<>();// 1.put(key,value) 加入或者修改一組鍵值對, 返回修改前的value值// 2.remove(key) 刪除// 3.clear()// 4.containKey(key)// 5.containValue(value)// 6.isEmpty()// 7.size()String preValue = map.put("zhangsan","lisi");System.out.println(preValue);map.put("wangwu","laoliu");preValue = map.put("zhangsan","zhangsan");System.out.println(preValue);System.out.println("=======================");System.out.println(map);map.remove("wangwu");System.out.println(map);boolean containKey = map.containsKey("zhangsan");boolean containValue = map.containsValue("zhangsan");System.out.println("=======================");map.clear();System.out.println(map.size());System.out.println(map.isEmpty());System.out.println("=======================");System.out.println(containKey);System.out.println(containValue);}
}

遍歷方式:

  1. 遍歷Key獲取Value值
  2. 遍歷Key Value
  3. 通過Lambda表達式
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;public class MapTest {public static void main(String[] args) {Map<String, String> map = new HashMap<>();// 1.put(key,value) 加入或者修改一組鍵值對, 返回修改前的value值// 2.remove(key) 刪除// 3.clear()// 4.containKey(key)// 5.containValue(value)// 6.isEmpty()// 7.size()String preValue = map.put("zhangsan", "lisi");map.put("wangwu", "laoliu");// 方式1Set<String> keys = map.keySet();// 方式1.1 迭代器Iterator<String> iterator = keys.iterator();while (iterator.hasNext()) {String key = iterator.next();System.out.println(key + "-" + map.get(key));}// 方式1.2 增強forfor (String key : keys) {System.out.println(key + ":" + map.get(key));}// 方式1.3 Lambda表達式keys.forEach(key -> System.out.println(key + ":" + map.get(key)));System.out.println("--------------------------------");// 方式2Set<Map.Entry<String, String>> entries = map.entrySet();// 方式2.1 迭代器Iterator<Map.Entry<String, String>> iterator1 = entries.iterator();while (iterator1.hasNext()) {// Entry是Map的內部接口Map.Entry<String, String> entry = iterator1.next();System.out.println(entry.getKey() + ":" + entry.getValue());}// 方式2.2 增強forfor (Map.Entry<String, String> entry : entries) {System.out.println(entry.getKey() + ":" + entry.getValue());}// 方式2.3 Lambda表達式entries.forEach(entry -> System.out.println(entry.getKey() + ":" + entry.getValue()));System.out.println("--------------------------------");// 方式3// 底層是遍歷entrySet,向BiConsumer函數式接口的accept方法填充對應的key和valuemap.forEach((key, value) -> System.out.println(key + ":" + value));}
}

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

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

相關文章

離散數學

(理解大于識記, 這么多公式我是記不住) 命題邏輯 P P P Q Q Q P \neg P P 否定/非 P ∧ Q P \wedge Q P∧Q 合取/與 P ∨ Q P \vee Q P∨Q 析取/或 P → Q P \to Q P→Q 蘊含 P ? Q P \leftrightarrow Q P?Q 等價0010011011011010001001101111 P → Q P\to Q P→Q 的自然語…

openssl 加密文件(支持大文件,對稱、非對稱)

一、非對稱加密&#xff08;小文件&#xff09; 生成 2048 位密鑰 openssl genrsa -out rsa2048.key 2048從 rsa2048.key 密鑰文件中提取出公鑰 pub2048.key openssl rsa -in rsa2048.key -pubout -out pub2048.key使用 pub2048.key 公鑰加密一個文件 (data.zip 為原始文件&…

C# WPF編程-創建項目

1.創建新項目 選擇“WPF應用程序”》“下一步” 2. 設置項目 設置項目名稱&#xff0c;保存位置等參數>下一步 3.選擇框架 4.項目創建成功 5.運行項目

兩張二值化圖像融合

python實現&#xff0c;已知兩張二值化圖像&#xff0c;對比兩張圖&#xff0c;將像素點一致的坐標保留原來顏色&#xff0c;不一致的坐標像素值變為128 讀取原圖 import cv2 import matplotlib.pyplot as plt import numpy as npcup_file_pathname"/home/wzc/zlt_self/…

vue-顯示數據

? v-text和v-html專門用來展示數據, 其作用和插值表達式類似。v-text和v-html可以避免插值閃爍問題. ? 當網速比較慢時, 使用{{}}來展示數據, 有可能會產生插值閃爍問題。 ? 插值閃爍: 在數據未加載完成時&#xff0c;頁面會顯示出原始的{{}}, 過一會才會展示正常數據.語法…

Opencv實戰(5)平滑處理與常見函數

平滑處理 Opencv實戰&#xff1a; Opencv(1)讀取與圖像操作 Opencv(2)繪圖與圖像操作 Opencv(3)詳解霍夫變換 Opencv(4)詳解輪廓 文章目錄 平滑處理1.均值濾波2.方框濾波3.高斯濾波4.中值濾波5.雙邊濾波 常見函數(1).createTrackbar()(2).SetMouseCallback() 圖像的平滑處理是…

細數Android開發者的艱辛歷程,android零基礎

首先我們來看一下組件化項目和傳統項目的區別: 在傳統的項目里 我們通常情況下會有一個commonLib的Libary模塊和一個app的application模塊&#xff0c;業務中的邏輯都寫在app中各個功能模塊放到不同的包下。這樣做有以下幾個主要的缺點&#xff1a; 1.無論分包做的再好&…

【Linux】USB Functionfs編程:libusb接口詳解

1、USB host_app代碼注釋 #include <libusb.h> libusb頭文件,編譯時鏈接庫:libusb-1.0#define VENDOR 0x1d6b 廠商:Linux Foundation #define PRODUCT 0x0105 設備:FunctionFS Gadge

Zynq—AD9238數據采集DDR3緩存千兆以太網發送實驗(一)

ACM9238 高速雙通道ADC模塊自助服務手冊AD9238 一、實驗目的 本次實驗通過電腦上的網絡調試助手&#xff0c;將命令幀進行發送&#xff0c;然后通過ACZ7015開發板上的以太網芯片接收&#xff0c;隨后將接收到的數據轉換成命令&#xff0c;從而實現對ACM9238模塊采樣頻率、數據…

JavaScript中的new Proxy()和Object.defineProperty使用詳細,Vue2和vue3中雙向數據綁定的原理

簡介&#xff1a; Object.defineProperty() 是 JavaScript 中一個強大且常用的方法&#xff0c;用于定義對象屬性&#xff0c;允許我們精確地控制屬性的行為&#xff0c;包括讀取、寫入和刪除等操作&#xff0c;是vue2中雙向數據綁定的原理&#xff1b; new Proxy() 是ES6中一…

Tomcat布署及優化

1.Tomcat簡介 Tomcat 是 Java 語言開發的&#xff0c;Tomcat 服務器是一個免費的開放源代碼的 Web 應用服務器&#xff0c;Tomcat 屬于輕量級應用服務器&#xff0c;在中小型系統和并發訪問用戶不是很多的場合下被普遍使用&#xff0c;是開發和調試 JSP 程序的首選。一般來說&…

在實訓云平臺上配置云主機

文章目錄 零、學習目標一、實訓云升級二、實訓云登錄&#xff08;一&#xff09;登錄實訓云&#xff08;二&#xff09;切換界面語言&#xff08;三&#xff09;規劃云主機實例 三、創建網絡三、創建路由器2024-2-29更新到此四、添加接口五、創建端口六、添加安全組規則七、創建…

反相輸入放大器與生俱來的坑

我們都知道反相放大器能將輸入的信號反相放大&#xff0c;這是很基本的知識&#xff0c;學過電路的一般都知道。反相放大器的公式為Vout -Vin*Rf/Rin&#xff08;運算放大器應用匯總&#xff09;。根據已知的公式&#xff0c;能很輕松的完成設計&#xff0c;但反相放大器與生俱…

每日一類:QString類深入講解

QString類是Qt框架中的一個核心組件&#xff0c;設計用于方便、高效地處理Unicode字符串。與標準C中的字符串處理方式相比&#xff0c;QString提供了更為豐富的API&#xff0c;支持國際化&#xff0c;并且內部使用UTF-16編碼&#xff0c;能夠處理世界上幾乎所有的語言文字。 設…

【PHP進階】Rabbitmq的實際使用

RabbitMQ是一個流行的消息隊列中間件&#xff0c;它提供了可靠的消息傳遞機制。在使用RabbitMQ時&#xff0c;有幾個重要的概念需要了解&#xff1a; 消息隊列&#xff08;Message Queue&#xff09;&#xff1a;RabbitMQ中的核心概念之一。它是消息的緩沖區&#xff0c;用于存…

容器安全工具使用指南:保障容器環境安全的利器

隨著容器技術的廣泛應用,容器安全成為關注的焦點。本文將深入介紹幾個流行的容器安全工具,我們將深入了解容器安全領域的Top 10工具,包括Trivy、veinmind-tools、Clair、Docker Bench for Security、Sysdig Falco、neuVector等,詳細講解它們的功能、原理、安裝和使用方法,…

【精簡版】Ubuntu/Linux Anaconda 命令行終端安裝

網上重復內容很多&#xff0c;大都啰里啰嗦&#xff0c;特作此筆記。 【精簡版】Ubuntu/Linux Anaconda 命令行安裝 1 下載安裝包1.1 尋找適配版本安裝包1.2 下載 2 運行安裝程序3 設置安裝路徑4 添加環境變量并運行4.1 環境變量4.2 運行 5 驗證安裝成功感謝及參考博文 1 下載…

js ES6判斷字符串是否以某個字符串開頭或者結尾startsWith、endsWith

1.前言 startsWith&#xff1a;startsWith方法用于檢查字符串是否以指定的字符串開頭。 endsWith&#xff1a;endsWith方法用于檢查字符串是否以指定的字符串結尾。 2.用法示例 const str Hello, world!;console.log(str.startsWith(Hello)); // true console.log(str.starts…

音頻提取使用什么方法?視頻提取音頻

在數字技術與多媒體日益普及的今天&#xff0c;音頻提取已成為一個常見且重要的任務。無論是為了制作視頻、編輯音樂&#xff0c;還是進行語音識別和分析&#xff0c;我們都需要從原始材料中提取音頻。那么&#xff0c;音頻提取通常使用什么方法呢&#xff1f; 1. 使用專業的音…

【Git教程】(七)變基與揀取 —— 變基操作的概念、適用場景及其實現方式,揀取操作的實現 ~

Git教程 變基與揀取 1?? 工作原理&#xff1a;復制提交2?? 避免“鉆石鏈”3?? 什么情況下會遇到沖突4?? 移植分支5?? 執行變基后原提交的情況6?? 提交的原件與副本存在于同一版本庫中所帶來的問題7?? 撿取&#x1f33e; 總結 通常&#xff0c; 一段提交歷史中往…