LinkedHashMap 是 java 中的預定義類,類似於 HashMap 。 LinkedHashMap 和 HashMap 之間的唯一區別是 LinkedHashMap 保留插入順序,而 HashMap 不保留插入順序。 LinkedHashMap 在 java 中可以轉換為兩個數組,其中一個數組用於 LinkedHashMap 中的鍵,另一個數組用於值。
例子:
Input : LinkedHashMap = [2=6, 3=4, 5=7, 4=6] Output: Array of keys = [2, 3, 5, 4] Array of Values = [6, 4, 7, 6] Input : LinkedHashMap = [1=a, 2=b, 3=c, 4=d] Output: Array of keys = [1, 2, 3, 4] Array of Values = [a, b, c, d]
算法:
- 使用鍵和相應的值在 LinkedHashMap 中進行輸入。
- 創建一個數組,數據類型與 LinkedHashMap 中的鍵相同。
- 創建另一個數組,其數據類型與 LinkedHashMap 中的值相同。
- 開始LinkedHashMap遍曆。
- 將每個鍵和值複製到兩個數組中。
- 遍曆完成後,打印兩個數組。
下麵是上述方法的實現:
Java
// Java Program to Convert LinkedHashMap to Two Arrays
import java.io.*;
import java.util.*;
class GFG {
public static void main(String[] args)
{
LinkedHashMap<Integer, Integer> lhm
= new LinkedHashMap<>();
lhm.put(2, 6);
lhm.put(3, 4);
lhm.put(5, 7);
lhm.put(4, 6);
lhm.put(6, 8);
Integer[] Keys = new Integer[lhm.size()];
Integer[] Values = new Integer[lhm.size()];
int i = 0;
// Using for-each loop
for (Map.Entry mapElement : lhm.entrySet()) {
Integer key = (Integer)mapElement.getKey();
// Add some bonus marks
// to all the students and print it
int value = ((int)mapElement.getValue());
Keys[i] = key;
Values[i] = value;
i++;
}
// printing all the element of array contain keys
System.out.print("Array of Key -> ");
for (Integer key : Keys) {
System.out.print(key + ", ");
}
// iterate value array
System.out.println();
System.out.print("Array of Values -> ");
for (Integer value : Values) {
System.out.print(value + ", ");
}
}
}
輸出
Array of Key -> 2, 3, 5, 4, 6, Array of Values -> 6, 4, 7, 6, 8,
時間複雜度:在)
相關用法
- Java LinkedHashMap轉List用法及代碼示例
- Java LinkedHashMap containsValue()用法及代碼示例
- Java LinkedHashMap entrySet()用法及代碼示例
- Java LinkedHashMap forEach()用法及代碼示例
- Java LinkedHashMap getOrDefault()用法及代碼示例
- Java LinkedHashMap keySet()用法及代碼示例
- Java LinkedHashMap values()用法及代碼示例
- Java LinkedHashMap containsKey()用法及代碼示例
- Java LinkedHashMap get()用法及代碼示例
- Java LinkedHashMap removeEldestEntry()用法及代碼示例
- Java LinkedHashMap clear()用法及代碼示例
- Java LinkedHashSet spliterator()用法及代碼示例
- Java LinkedHashSet add()用法及代碼示例
- Java LinkedHashSet clear()用法及代碼示例
- Java LinkedHashSet clone()用法及代碼示例
- Java LinkedHashSet contains()用法及代碼示例
- Java LinkedHashSet containsAll()用法及代碼示例
- Java LinkedHashSet equals()用法及代碼示例
- Java LinkedHashSet hashCode()用法及代碼示例
- Java LinkedHashSet isEmpty()用法及代碼示例
- Java LinkedHashSet remove()用法及代碼示例
- Java LinkedHashSet removeAll()用法及代碼示例
- Java LinkedHashSet retainAll()用法及代碼示例
- Java LinkedHashSet size()用法及代碼示例
- Java LinkedHashSet toArray()用法及代碼示例
注:本文由純淨天空篩選整理自sambhavshrivastava20大神的英文原創作品 How to Convert LinkedHashMap to Two Arrays in Java?。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。