如何將映射鍵的int[] 轉換為Integer[]
在Java 中使用集合和映射時,重要的是意識到原始資料類型的限制。在某些情況下,例如當您需要將整數數組作為鍵儲存在 Map 中時,不能直接使用原始 int[] 數組,因為 Map 鍵必須是物件。這就是將 int[] 轉換為 Integer[] 派上用場的地方。
在您的特定情況下,您有一個大型的 int[] 陣列資料集,並且想要建立一個 Map
Java 8(單行)
Java 8 提供了一種使用流將int[] 轉換為Integer[] 的簡單方法:
<code class="java">int[] data = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; // To boxed array Integer[] boxedData = Arrays.stream(data).boxed().toArray(Integer[]::new);</code>
使用收集器
或者,您可以使用收集器將int[] 轉換為List
<code class="java">int[] data = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; // To boxed list List<Integer> boxedList = Arrays.stream(data).boxed().collect(Collectors.toList()); // To boxed array Integer[] boxedData = boxedList.toArray(new Integer[boxedList.size()]);</code>
注意:
雖然可以將int[] 轉換為Integer[] 用作映射鍵,但重要的是要考慮使用數組作為鍵的缺點。其中包括:
大多數情況下,建議使用自訂物件或包裝類別作為映射鍵而不是陣列。
以上是如何將 Java 中的映射鍵的 `int[]` 轉換為 `Integer[]`?的詳細內容。更多資訊請關注PHP中文網其他相關文章!