Arrays.asList() 字符串转数组
时间: 2023-11-22 21:49:35 浏览: 40
当我们需要将一个字符串数组转换为List集合时,可以使用Arrays.asList()方法。下面是一个例子:
```java
String[] myArray = {"Apple", "Banana", "Orange"};
List<String> myList = Arrays.asList(myArray);```
上面的代码将字符串数组myArray转换为List集合myList。需要注意的是,Arrays.asList()方法返回的是一个固定大小的List,不能进行添加或删除操作。如果需要进行添加或删除操作,可以使用ArrayList等其他List实现类。
相关问题
List<String> list = Arrays.asList(arr);Arrays报错 List<String> list = Arrays.asList(arr); List<String> list = Arrays.asList(arr);
Arrays.asList()方法返回的是一个固定大小的List,不能进行添加或删除操作,只能进行修改操作。如果你想要一个可变的List,可以使用java.util.ArrayList来代替Arrays.asList()方法返回的List。如果你使用Arrays.asList()方法将int[]转成ArrayList,会出现类型不匹配的错误,因为Arrays.asList()方法只能将数组转换为List<Object>类型,而int[]是一个基本数据类型,不是一个对象。如果你想要将int[]转换为List<Integer>类型的ArrayList,可以使用Java 8中的IntStream来实现,例如:
```java
int[] arr = {1, 2, 3};
List<Integer> list = IntStream.of(arr).boxed().collect(Collectors.toList());
```
Arrays.asList 和Arrays.stream
Arrays.asList是一个静态方法,它接受一个数组(或者是一组元素),并返回一个包含了这些元素的List。这个返回的List是一个固定大小的列表,它不支持添加或删除操作,但是可以对元素进行修改。
Arrays.stream也是一个静态方法,它接受一个数组(或者是一组元素),并返回一个流(Stream)。流是Java 8引入的一种新的抽象,它提供了一种处理集合和数组等数据源的方式。通过流,我们可以对数据进行筛选、映射、过滤等操作。
区别在于,Arrays.asList返回的是一个List对象,而Arrays.stream返回的是一个Stream对象。由于Stream是Java 8中引入的新特性,它提供了更多的操作和灵活性,能够更方便地进行集合处理和操作。而List则是最基本的集合类型之一,它提供了一系列常用的方法。
使用Arrays.asList时,我们可以方便地将数组转换为List,进行一些基本的操作。而使用Arrays.stream时,我们可以将数组转换为流,并利用流的各种操作来处理数据。