亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Java遍歷HashMap的6種常見方式

 更新時間:2025年05月08日 10:38:16   作者:程序員貓哥  
這篇文章主要給大家介紹了關(guān)于Java遍歷HashMap的6種常見方式,方法包括使用keySet()、entrySet()、forEach()、迭代器以及分別遍歷鍵和值,文中給出了詳細(xì)的代碼示例,需要的朋友可以參考下

在 Java 中,有多種方式可以遍歷 HashMap,下面為你詳細(xì)介紹幾種常見的遍歷方法。

1,使用 keySet() 遍歷鍵,再通過鍵獲取值

  • 創(chuàng)建一個 HashMap 對象,并向其中添加一些鍵值對。
  • 使用 map.keySet() 方法獲取 HashMap 中所有鍵的集合。
  • 通過 for-each 循環(huán)遍歷這個鍵的集合。
  • 在循環(huán)體中,使用 map.get(key) 方法根據(jù)當(dāng)前鍵獲取對應(yīng)的值,并將鍵和值打印輸出。
package com.maoge;

import java.util.HashMap;
import java.util.Map;

public class Test03 {
    public static void main(String[] args) {

        // 創(chuàng)建一個 HashMap 并添加元素
        Map<String, String> map = new HashMap<>();
        map.put("張飛", "男");
        map.put("孫尚香", "女");
        map.put("關(guān)羽", "男");
        map.put("貂蟬", "女");

        // 遍歷鍵集合
        for (String key : map.keySet()) {
            // 根據(jù)鍵獲取值
            String value = map.get(key);
            System.out.println("Key: " + key + ", Value: " + value);
        }
    }
}

2,使用 entrySet() 遍歷鍵值對

  • 先創(chuàng)建一個 HashMap 對象并添加鍵值對。
  • 使用 map.entrySet() 方法獲取包含所有鍵值對的集合。
  • 通過 for-each 循環(huán)遍歷這個集合,每次循環(huán)得到一個 Map.Entry 對象。
  • 在循環(huán)體中,使用 entry.getKey() 方法獲取鍵,使用 entry.getValue() 方法獲取值,并將它們打印輸出。
package com.maoge;

import java.util.HashMap;
import java.util.Map;

public class Test03 {
    public static void main(String[] args) {

        // 創(chuàng)建一個 HashMap 并添加元素
        Map<String, String> map = new HashMap<>();
        map.put("張飛", "男");
        map.put("孫尚香", "女");
        map.put("關(guān)羽", "男");
        map.put("貂蟬", "女");

        // 遍歷鍵值對集合
        for (Map.Entry<String, String> entry : map.entrySet()) {
            // 獲取鍵
            String key = entry.getKey();
            // 獲取值
            String value = entry.getValue();
            System.out.println("Key: " + key + ", Value: " + value);
        }
    }
}

3,使用 forEach() 方法(Java 8 及以上)

  • 創(chuàng)建 HashMap 并添加元素。
  • 調(diào)用 map.forEach() 方法,傳入一個 Lambda 表達(dá)式。Lambda 表達(dá)式的參數(shù) key 和 value
    分別代表當(dāng)前遍歷到的鍵和值。
  • 在 Lambda 表達(dá)式的方法體中,將鍵和值打印輸出。
package com.maoge;

import java.util.HashMap;
import java.util.Map;

public class Test03 {
    public static void main(String[] args) {

        // 創(chuàng)建一個 HashMap 并添加元素
        Map<String, String> map = new HashMap<>();
        map.put("張飛", "男");
        map.put("孫尚香", "女");
        map.put("關(guān)羽", "男");
        map.put("貂蟬", "女");

        // 使用 forEach 方法遍歷
        map.forEach((key, value) -> {
            System.out.println("Key: " + key + ", Value: " + value);
        });
    }
}

4,使用迭代器(Iterator)遍歷

  • 創(chuàng)建 HashMap 并添加元素。
  • 使用 map.entrySet().iterator() 方法獲取鍵值對集合的迭代器。
  • 使用 while 循環(huán)結(jié)合 iterator.hasNext() 方法判斷是否還有下一個元素。
  • 在循環(huán)體中,使用 iterator.next() 方法獲取下一個 Map.Entry 對象,然后獲取鍵和值并打印輸出。
package com.maoge;

import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;

public class Test03 {
    public static void main(String[] args) {

        // 創(chuàng)建一個 HashMap 并添加元素
        Map<String, String> map = new HashMap<>();
        map.put("張飛", "男");
        map.put("孫尚香", "女");
        map.put("關(guān)羽", "男");
        map.put("貂蟬", "女");

        // 獲取鍵值對集合的迭代器
        Iterator<Map.Entry<String, String>> iterator = map.entrySet().iterator();

        // 使用迭代器遍歷
        while (iterator.hasNext()) {
            Map.Entry<String, String> entry = iterator.next();
            String key = entry.getKey();
            String value = entry.getValue();
            System.out.println("Key: " + key + ", Value: " + value);
        }
    }
}

5,遍歷所有鍵

注意只是遍歷鍵值,即key值,代碼如下:

package com.maoge;

import java.util.HashMap;
import java.util.Map;

public class Test03 {
    public static void main(String[] args) {

        // 創(chuàng)建一個 HashMap 并添加元素
        Map<String, String> map = new HashMap<>();
        map.put("張飛", "男");
        map.put("孫尚香", "女");
        map.put("關(guān)羽", "男");
        map.put("貂蟬", "女");

        // 遍歷所有鍵
        for (String key : map.keySet()) {
            System.out.println("key : " + key);
        }
    }
}

6,遍歷所有值

注意只是遍歷鍵值對的值,即value,代碼如下:

package com.maoge;

import java.util.HashMap;
import java.util.Map;

public class Test03 {
    public static void main(String[] args) {

        // 創(chuàng)建一個 HashMap 并添加元素
        Map<String, String> map = new HashMap<>();
        map.put("張飛", "男");
        map.put("孫尚香", "女");
        map.put("關(guān)羽", "男");
        map.put("貂蟬", "女");

        // 遍歷所有鍵
        for (String key : map.values()) {
            System.out.println("value: " + key);
        }
    }
}

總結(jié) 

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

相關(guān)文章

  • Java 事務(wù)詳解及簡單應(yīng)用實例

    Java 事務(wù)詳解及簡單應(yīng)用實例

    這篇文章主要介紹了Java 事務(wù)詳解及簡單應(yīng)用實例的相關(guān)資料,java事務(wù)能夠保證數(shù)據(jù)的完整性和一致性,當(dāng)然這是書本上的知識,具體如何應(yīng)用這里舉例說明,需要的朋友可以參考下
    2016-12-12
  • SpringBoot與SpringMVC中參數(shù)傳遞的原理解析

    SpringBoot與SpringMVC中參數(shù)傳遞的原理解析

    這篇文章主要介紹了SpringBoot與SpringMVC中參數(shù)傳遞的原理,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-07-07
  • Java線程池的幾種實現(xiàn)方法和區(qū)別介紹

    Java線程池的幾種實現(xiàn)方法和區(qū)別介紹

    下面小編就為大家?guī)硪黄狫ava線程池的幾種實現(xiàn)方法和區(qū)別。小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考,一起跟隨小編過來看看吧,祝大家游戲愉快哦
    2016-05-05
  • 基于java實現(xiàn)具有時效性文件鏈接

    基于java實現(xiàn)具有時效性文件鏈接

    這篇文章主要為大家詳細(xì)介紹了如何基于java實現(xiàn)具有時效性的文件鏈接,文中的示例代碼講解詳細(xì),具有一定的借鑒價值,感興趣的小伙伴可以了解一下
    2023-12-12
  • Spring JPA事務(wù)管理與自定義操作實例解析(最新推薦)

    Spring JPA事務(wù)管理與自定義操作實例解析(最新推薦)

    在Spring框架中,數(shù)據(jù)持久化操作常常與事務(wù)管理緊密相關(guān),本文將深入探討Spring Data JPA中的事務(wù)管理機(jī)制,并結(jié)合具體實例,展示如何自定義事務(wù)行為以滿足不同的業(yè)務(wù)需求,感興趣的朋友一起看看吧
    2024-12-12
  • springboot后端如何實現(xiàn)攜帶token登陸

    springboot后端如何實現(xiàn)攜帶token登陸

    這篇文章主要介紹了springboot后端如何實現(xiàn)攜帶token登陸,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-11-11
  • Spring源碼學(xué)習(xí)之動態(tài)代理實現(xiàn)流程

    Spring源碼學(xué)習(xí)之動態(tài)代理實現(xiàn)流程

    這篇文章主要給大家介紹了關(guān)于Spring源碼學(xué)習(xí)之動態(tài)代理實現(xiàn)流程的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • Java web基礎(chǔ)學(xué)習(xí)之開發(fā)環(huán)境篇(詳解)

    Java web基礎(chǔ)學(xué)習(xí)之開發(fā)環(huán)境篇(詳解)

    下面小編就為大家?guī)硪黄狫ava web基礎(chǔ)學(xué)習(xí)之開發(fā)環(huán)境篇(詳解)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-08-08
  • Java遞歸運(yùn)行的機(jī)制:遞歸的微觀解讀圖文分析

    Java遞歸運(yùn)行的機(jī)制:遞歸的微觀解讀圖文分析

    這篇文章主要介紹了Java遞歸運(yùn)行的機(jī)制:遞歸的微觀解讀,結(jié)合圖文形式詳細(xì)分析了java遞歸運(yùn)行的原理、機(jī)制與相關(guān)注意事項,需要的朋友可以參考下
    2020-03-03
  • Java BufferedWriter BufferedReader 源碼分析

    Java BufferedWriter BufferedReader 源碼分析

    本文是關(guān)于Java BufferedWriter ,BufferedReader 簡介、分析源碼 對Java IO 流深入了解,希望看到的同學(xué)對你有所幫助
    2016-07-07

最新評論