如何在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 数据结构的功能,同时快速访问和打印其键。
数据结构
网络
关系型数据库管理系统
操作系统
Java
iOS
HTML
CSS
Android
Python
C语言编程
C++
C#
MongoDB
MySQL
Javascript
PHP