一、使用Arrays.asList()
Java中提供了一個Arrays.asList()方法來將數組轉換為List集合,使用起來非常方便。下面是示例代碼:
String[] array = {"Tom","Jerry","Mary"}; List<String> list = Arrays.asList(array);
使用Arrays.asList()方法轉換後,得到的List集合是一個長度不可變的集合,不能使用add()、remove()等修改集合長度的方法,否則會發生UnsupportedOperationException異常。
需要注意的是,這裡返回的List集合併不是java.util.ArrayList類的實例,而是一個私有的靜態類Arrays.ArrayList實例,它並沒有實現集合的修改方法。
二、使用Collections.addAll()
另外一種將數組轉為List的方法是使用Collections.addAll()方法。這個方法僅適用於將數組添加到一個已經存在的List中。下面是示例代碼:
String[] array = {"Tom","Jerry","Mary"}; List<String> list = new ArrayList<>(); Collections.addAll(list, array);
這個方法最終返回的List集合是一個可變長度的java.util.ArrayList實例,可以使用add()、remove()等修改集合長度的方法。
三、Java8語法:使用Stream API
Java8增加了Stream API,提供了更加流暢的集合操作方式。使用Stream API也可以將數組轉化為List,下面是示例代碼:
String[] array = {"Tom","Jerry","Mary"}; List<String> list = Stream.of(array).collect(Collectors.toList());
該方法使用了Stream.of()來將數組轉換成流,然後使用collect(Collectors.toList())來轉換為List集合。
四、代碼示例
import java.util.ArrayList; import java.util.Arrays; import java.util.Collections; import java.util.List; import java.util.stream.Collectors; import java.util.stream.Stream; public class ArrayToListDemo { public static void main(String[] args) { //使用Arrays.asList()方法 String[] array1 = {"Tom","Jerry","Mary"}; List<String> list1 = Arrays.asList(array1); //使用Collections.addAll()方法 String[] array2 = {"Tom","Jerry","Mary"}; List<String> list2 = new ArrayList<>(); Collections.addAll(list2, array2); //使用Stream API String[] array3 = {"Tom","Jerry","Mary"}; List<String> list3 = Stream.of(array3).collect(Collectors.toList()); } }
原創文章,作者:JURL,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/148234.html