將Integers ArrayList 轉換為原始int 陣列
在Java 中,有多種方法將包含Integer 物件的ArrayList 轉換為原始int [] 數組。
在提供的程式碼片段中嘗試的一種方法是使用 toArray() 方法。但是,由於數組類型不相容,這將引發編譯時錯誤。要解決此問題,請指定要傳回的陣列類型,如下所示:
int[] n = (int[])x.toArray(new int[x.size()]);
另一種方法(對於Java 8 特別有用)是利用Stream API:
int[] arr = list.stream().mapToInt(i -> i).toArray();
此方法將清單中的每個元素轉換為其對應的int 值,從而產生所需的陣列。
您也可以使用intValue 方法明確轉換每個Integer 物件:
int[] arr = list.stream().mapToInt(Integer::intValue).toArray();
要處理潛在的空引用,請在流管道中新增過濾器:
int[] arr = list.stream().filter(Objects::nonNull).mapToInt(i -> i).toArray();
使用這些技術,您可以有效地將Integers 的ArrayList 轉換為Java 中的原始int 陣列。
以上是如何在 Java 中高效率地將整數 ArrayList 轉換為原始 int 陣列?的詳細內容。更多資訊請關注PHP中文網其他相關文章!