了解Arrays.asList() 行為及其限制
使用陣列和集合時,通常希望將陣列轉換為一個更容易操作的列表。 Java 的 Arrays.asList() 方法通常用於此目的。但是,在某些情況下,此方法可能無法如預期運作。
為什麼Arrays.asList() 回傳不同的清單
考慮以下程式碼:
List<Integer> list = Arrays.asList(1, 2, 3, 4, 5); // Works int[] ints = {1, 2, 3, 4, 5}; List<Integer> list = Arrays.asList(ints); // Returns List<int[]>
在第一個範例中,Arrays. asList() 傳回一個List
自動裝箱限制
Java 的自動裝箱功能會自動將基本類型轉換為其對應的包裝類型(例如,int 到Integer) 。然而,這種轉換僅發生在單一元素上,而不發生在基元數組上。因此,當將 int[] 傳遞給 Arrays.asList() 時,不會發生自動裝箱,並且該方法傳回 List
解決方案
要修正此行為並取得List
以上是Java 的 Arrays.asList() 方法有哪些限制?的詳細內容。更多資訊請關注PHP中文網其他相關文章!