一、使用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-tw/n/148234.html
微信掃一掃
支付寶掃一掃