將屬性列表轉換為Map的Java程式
在本文中,我們將學習如何將屬性列表轉換為Map在Java中。Properties 類通常用於儲存鍵值對,但有時您可能需要在Map結構中使用這些鍵值對。我們將演示如何獲取屬性並將它們轉換為HashMap。
問題陳述
編寫一個Java程式,將屬性列表轉換為Map結構:
輸出
Key and Value of the Map...
P: 1
Q: 2
R: 3
S: 4
T: 5
U: 6
V: 7
將屬性列表轉換為Map的步驟:
以下是將屬性列表轉換為Map的步驟:
- 首先,從java.util 包匯入必要的類,例如HashMap、Map、Properties和Set。
- 使用Properties p = new Properties()建立一個Properties 類的例項。
- 在Properties物件上使用setProperty() 方法新增鍵值對。
- 透過將Properties例項傳遞給HashMap建構函式,將Properties物件轉換為HashMap。
- 使用entrySet() 方法從HashMap中檢索條目。
- 使用for迴圈迭代map條目並列印每個鍵值對。
將屬性列表轉換為Map的Java程式
以下是將屬性列表轉換為Map的Java程式:
import java.util.HashMap; import java.util.Map; import java.util.Properties; import java.util.Set; public class Demo { public static void main(String args[]) { Properties p = new Properties(); p.setProperty("P", "1"); p.setProperty("Q", "2"); p.setProperty("R", "3"); p.setProperty("S", "4"); p.setProperty("T", "5"); p.setProperty("U", "6"); p.setProperty("V", "7"); // Manually convert Properties to HashMap HashMap<String, String> map = new HashMap<>(); for (String key : p.stringPropertyNames()) { map.put(key, p.getProperty(key)); } Set<Map.Entry<String, String>> set = map.entrySet(); System.out.println("Key and Value of the Map... "); for (Map.Entry<String, String> m : set) { System.out.print(m.getKey() + ": "); System.out.println(m.getValue()); } } }
輸出
Key and Value of the Map... P: 1 Q: 2 R: 3 S: 4 T: 5 U: 6 V: 7
程式碼解釋
要將屬性列表轉換為map,讓我們首先建立一個Properties類的物件:
Properties p = new Properties();
現在,使用setProperty()設定鍵值對:
p.setProperty("P", "1"); p.setProperty("Q", "2"); p.setProperty("R", "3"); p.setProperty("S", "4"); p.setProperty("T", "5"); p.setProperty("U", "6");
這樣,屬性列表轉換為Map的方式如下:
HashMap<String, String>map = new HashMap<String, String>((Map) p);
然後,它透過使用stringPropertyNames()迴圈遍歷屬性名稱並使用getProperty()獲取每個值來手動將Properties轉換為HashMap。
廣告