如何在Java中列印LinkedHashMap的所有鍵?


Java 的 LinkedHashMap 資料結構結合了 HashMap 和雙向連結串列的優點。對於需要可預測迭代的情況,它是更好的選擇之一,因為它不僅像 HashMap 一樣提供鍵值對映,而且還保留了元件的插入順序。有時我們需要出於多種原因列印 LinkedHashMap 中找到的每個鍵,包括除錯、分析以及向用戶顯示資訊。在這篇文章中,我們將探討兩種優秀的技術,它們讓我們能夠列印 Java 中 LinkedHashMap 中的每個鍵,從而有效地提取和視覺化鍵資訊。

使用 keySet() 方法訪問 LinkedHashMap

LinkedHashMap 的所有鍵都包含在 keySet() 方法返回的 Set 檢視中。這意味著對 set 做出的任何更改都將反映在原始對映中。透過獲取鍵集,我們可以迭代鍵並根據我們的需要執行不同的操作。

語法

可以使用以下方法有效地訪問和使用 LinkedHashMap 的鍵:-

Set<KeyType> keySet = linkedHashMap.keySet();

方法

要列印 Java 中 LinkedHashMap 的所有鍵,我們可以遵循兩種方法

  • 利用 keySet() 方法。

  • 利用 forEach() 方法。

讓我們深入瞭解這兩種方法:-

方法 1:利用 keySet() 方法。

第一種方法涉及使用 LinkedHashMap 類的 keySet() 方法獲取所有鍵的 Set 檢視。之後,我們可以再次遍歷此 set 並分別列印每個鍵。

演算法

在 Java 中列印 LinkedHashMap 的所有鍵的步驟如下

步驟 1:可以建立 LinkedHashMap 物件。

步驟 2:將鍵值對新增到 LinkedHashMap。

步驟 3:利用 keySet() 函式獲取鍵的集合。

步驟 4:在遍歷鍵列表時列印每個鍵。

示例

import java.util.LinkedHashMap;
import java.util.Map;

public class Main {

public static void main(String[] args) {
//Create a  new LinkedHashMap 
        LinkedHashMap<Integer, String> linkedHashMap = new LinkedHashMap<>();
//Put values to the LinkedHashMap
        linkedHashMap.put(1, "Pen");
        linkedHashMap.put(2, "Book");
        linkedHashMap.put(3, "Pencil");

        printKeys(linkedHashMap);
    }

private static void printKeys(LinkedHashMap<Integer, String> map) {
//Print the keys of the LinkedHashMap
        for (Integer key : map.keySet()) {
            System.out.println(key);
        }
    }
}

輸出

1
2
3

方法 2:利用 forEach() 方法

在第二種策略中,使用了 Java 8 中的 forEach() 函式。藉助這種方法,我們可以重複遍歷 LinkedHashMap 的條目並對每個條目執行某些操作。在這種情況下,我們可以列印每個條目的鍵。使用 Java 8 的 forEach() 方法,我們可以迭代 LinkedHashMap 元素並對每個元素執行特定操作。它接受一個 lambda 表示式作為引數,該表示式指定要對每個專案執行的操作。由於我們可以在 lambda 表示式中指定所需的操作,因此此技術提供了一種清晰且表達力強的與 LinkedHashMap 的鍵(和值)互動的方式。

演算法

在 Java 中列印 LinkedHashMap 的所有鍵的步驟如下

步驟 1:可以構造 LinkedHashMap 物件。

步驟 2:將鍵值對新增到 LinkedHashMap。

步驟 3:要迴圈遍歷 LinkedHashMap 的專案,請使用 forEach() 方法。

步驟 4:提取並列印每個條目的鍵。

利用 addAll() 函式將 HashSet 中的元素返回到 ArrayList。

示例

import java.util.LinkedHashMap;
import java.util.Map;

public class Main {

public static void main(String[] args) {
//Create a  new LinkedHashMap 
        LinkedHashMap<Integer, String> linkedHashMap = new LinkedHashMap<>();
    //Add some values to it
        linkedHashMap.put(1, "Pen");
        linkedHashMap.put(2, "Pencil");
        linkedHashMap.put(3, "Book");
// Call the printKeys function
//pass the LinkedHashMap for printing values
        printKeys(linkedHashMap);
    }

private static void printKeys(LinkedHashMap<Integer, String> map) {
//Print the keys with the help of forEach() method
        map.forEach((key, value) -> System.out.println(key));
    }
}

輸出

1
2
3

結論

在本文中,我們研究了兩種列印 Java LinkedHashMap 中每個鍵的方法。瞭解這些過程將使您能夠有效地分析、除錯或在程式碼中顯示 LinkedHashMap 的鍵。您可以根據您的編碼偏好和專案的規範選擇最適合您需求的策略。這些方法使您能夠利用 LinkedHashMap 資料結構的功能,同時快速訪問和列印其鍵。

更新於: 2023 年 8 月 25 日

1K+ 次檢視

開啟您的 職業生涯

透過完成課程獲得認證

開始學習
廣告