使用Java中的迭代器遍历 LinkedHashMap
LinkedHashMap 和 HashMap 一样是Java中的一个预定义类。 LinkedHashMap 和 HashMap 的唯一区别是 LinkedHashMap 保留插入顺序,而 HashMap 不保留插入顺序。任务是使用迭代器遍历 LinkedHashMap。我们使用 Iterator 对象来遍历 LinkedHashMap。
例子
Input: Key - 2 : Value - 6
Key - 3 : Value - 4
Key - 6 : Value - 5
Key - 4 : Value - 10
Key - 5 : Value - 6
Output:
Key = Value
2 = 6
3 = 4
6 = 5
4 = 10
5 = 6
算法 :
1. 创建一个 LinkedHashMap 并添加键值对。
2. 我们使用以下方法将 LinkedHashMap 转换为 entrySet,
Set s = lhm.entrySet();
3. 我们为我们的集合定义迭代器。
Iterator it=s.iterator();
4. 使用while 循环遍历linkedHashMap。
while(it.hasNext())
System.out.println(it.next());
执行
Java
// Java program to Iterate through LinkedHashMap using an
// Iterator
import java.io.*;
import java.util.*;
class GFG {
public static void main(String[] args)
{
// create a linkedhashmap
LinkedHashMap lhm
= new LinkedHashMap<>();
// add mappings
lhm.put(2, 6);
lhm.put(3, 4);
lhm.put(6, 8);
lhm.put(4, 10);
lhm.put(5, 6);
// create an entryset
Set s = lhm.entrySet();
// create an iterator
Iterator it = s.iterator();
// iterate an print the mappings
System.out.println("key=Value");
while (it.hasNext()) {
System.out.println(it.next());
}
}
}
输出
key=Value
2=6
3=4
6=8
4=10
5=6
时间复杂度: O(n)。