如何在 Java 中获取 LinkedHashMap 的所有值?
LinkedHashMap 是 Java 集合框架的一个泛型类,它实现了 Map 接口。顾名思义,它是 HashMap 类的子类,并使用双向链表按插入顺序存储条目。它维护键值对条目。键是一个用于获取和接收与其关联的值的对象。因此,我们可以使用此键以及 'get()' 方法从 LinkedHashMap 获取所有值。本文旨在解释打印 LinkedHashMap 所有值的各种方法。
获取 LinkedHashMap 所有值的 Java 程序
在直接跳转到示例程序之前,让我们先了解一些关于 LinkedHashMap 的其他要点。
LinkedHashMap
正如我们之前讨论的,LinkedHashMap 类扩展了 HashMap 类以实现 Map 接口。因此,它可以使用所有方法,并且还可以执行 HashMap 类能够执行的类似操作。它以 LinkedList 的形式存储映射的元素,并按照插入的顺序存储,因此,无论何时我们返回其元素,它都将按插入顺序打印。
LinkedHashMap 的通用语法如下所示
语法
LinkedHashMap< TypeOfKey, TypeOfValue > nameOfMap = new LinkedHashMap<>();
在上述语法中,
TypeOfKey:指定键的数据类型。
TypeOfValue:指定要存储在映射中的值的数据类型。
nameOfMap:为您的映射提供一个合适的名称。
现在,让我们为从 LinkedHashMap 打印所有值创建 Java 程序。
示例 1
以下示例演示了如何使用 for-each 循环从 LinkedHashMap 获取所有值。
方法
首先,导入 'java.util' 包,以便我们可以访问 Map 的功能。
然后,创建一个 LinkedHashMap,并使用内置方法 'put()' 存储一些指定类型元素。
接下来,初始化一个 'index' 变量来指定索引。
现在,使用一个 for-each 循环遍历 LinkedHashMap 的键,并在每次迭代期间将索引递增 1。此外,使用 'get()' 方法打印值。
import java.util.*; public class Example1 { public static void main(String[] args) { // Creating a LinkedHashMap LinkedHashMap<String, Integer> LinkHmap = new LinkedHashMap<>(); // storing elements to the map LinkHmap.put("TShirt", 59); LinkHmap.put("Trouser", 60); LinkHmap.put("Shirt", 45); LinkHmap.put("Watch", 230); LinkHmap.put("Shoes", 55); // to print all entries System.out.println("All items from LinkedHashMap :"); for (String unKey : LinkHmap.keySet()) { System.out.println("Item: " + unKey + ", Quantity: " + LinkHmap.get(unKey)); } // Initializing the index int index = 0; // iterating using for-each loop for (String unKey : LinkHmap.keySet()) { // printing the result System.out.println("The value at index " + index + " from LinkedHashMap is: " + LinkHmap.get(unKey)); index++; // incrementing the index } } }
输出
All items from LinkedHashMap : Item: TShirt, Quantity: 59 Item: Trouser, Quantity: 60 Item: Shirt, Quantity: 45 Item: Watch, Quantity: 230 Item: Shoes, Quantity: 55 The value at index 0 from LinkedHashMap is: 59 The value at index 1 from LinkedHashMap is: 60 The value at index 2 from LinkedHashMap is: 45 The value at index 3 from LinkedHashMap is: 230 The value at index 4 from LinkedHashMap is: 55
示例 2
在以下示例中,我们将使用迭代器接口来获取 LinkedHashMap 的所有值。
方法
遵循上一个示例的前两个步骤。
定义一个迭代器,并将 LinkedHashMap 的值存储到其中。
然后,初始化一个 'index' 变量来指定索引。
使用 while 循环迭代到可用值的末尾并提取值。此外,在每次迭代期间将 'index' 递增 1。
import java.util.*; public class Example2 { public static void main(String[] args) { // Creating a LinkedHashMap LinkedHashMap<String, Integer> LinkHmap = new LinkedHashMap<>(); // storing elements to the map LinkHmap.put("TShirt", 59); LinkHmap.put("Trouser", 60); LinkHmap.put("Shirt", 45); LinkHmap.put("Watch", 230); LinkHmap.put("Shoes", 55); // to print all entries System.out.println("All items from LinkedHashMap :"); for (String unKey : LinkHmap.keySet()) { System.out.println("Item: " + unKey + ", Quantity: " + LinkHmap.get(unKey)); } // Defining an iterator Iterator<Integer> iter = LinkHmap.values().iterator(); // Initializing the index int index = 0; // iterating using while loop while (iter.hasNext()) { // to get the next value and increment the index System.out.println("The value at index " + index + " from LinkedHashMap is: " + iter.next()); index++; } } }
输出
All items from LinkedHashMap : Item: TShirt, Quantity: 59 Item: Trouser, Quantity: 60 Item: Shirt, Quantity: 45 Item: Watch, Quantity: 230 Item: Shoes, Quantity: 55 The value at index 0 from LinkedHashMap is: 59 The value at index 1 from LinkedHashMap is: 60 The value at index 2 from LinkedHashMap is: 45 The value at index 3 from LinkedHashMap is: 230 The value at index 4 from LinkedHashMap is: 55
结论
在本文中,我们学习了 LinkedHashMap 以及如何创建它。本文的目的是找到打印 LinkedHashMap 所有值的各种方法。对于此操作,我们已经看到了两个示例程序。