在Java 中將陣列轉換為列表:揭示1.4.2 後的變化
在Java 中將數組轉換為列表時,您可能遇到過由於Arrays.asList() 方法從Java SE 1.4.2 到 8的更改而導致意外行為。本文深入探討了融入這些變更並提供解決方案以確保跨版本的清單轉換一致。
1.4.2 之前的行為:將陣列轉換為列表
Java SE 1.4 之前。 2、Arrays.asList()方法方便地將陣列轉換為可變列表。例如,以下程式碼片段將建立一個包含元素1、2、3 的清單:
Post-1.4.2 行為:陣列包裹在清單中
從Java SE 1.5.0 開始,Arrays.asList() 的行為發生了顯著變化。現在,它不再將數組轉換為其元素列表,而是傳回一個不可修改的包裝器列表,其中包含單個元素:原始數組。引入此行為是為了防止修改列表,這可能會導致不可預測的結果。
因此,前面的程式碼片段現在的行為有所不同,傳回包含陣列「numbers」的清單:
解決方法:將陣列轉換為原始包裝清單
到取得包含陣列各個元素的可變列表,可以將陣列轉換為對應原始包裝類別的列表。例如,要建立 Integer 物件的列表,您可以使用以下程式碼:
此方法可確保結果列表包含原始值而不是數組本身。
以上是自從 Java SE 1.4.2 以來,Java 的 `Arrays.asList()` 方法發生了怎樣的變化,我該如何解決它?的詳細內容。更多資訊請關注PHP中文網其他相關文章!