Java 8 清單
Java 開發人員可以利用Java 8 的強大功能將List 轉換為Map,而無需依賴Guava 等第三方函式庫。
問題陳述
考慮一下在 Java 8 中使用流和 lambda 將物件清單轉換為映射的挑戰。傳統的Java 7 及更低版本中的方法涉及迭代 List 並手動將每個元素作為鍵值對新增至 Map。
Java 8 解決方案
Java 8 提供使用 Collectors.toMap() 方法的更簡單和優雅的解決方案。此方法採用兩個函數作為參數:
在這種特定情況下,鍵將是每個Choice 物件的名稱,值將是Choice 物件本身。然後,stream().collect() 方法使用這些函數將結果收集到 Map 中。
Map<String, Choice> result = choices.stream().collect(Collectors.toMap(Choice::getName, Function.identity()));
這段簡潔高效的程式碼片段展示了 Java 8 流和 lambda 將集合轉換為不同資料的強大功能結構。
以上是如何在沒有 Guava 的情況下將 Java 8 清單轉換為地圖?的詳細內容。更多資訊請關注PHP中文網其他相關文章!