一、基本实现方法
Java数组转换为List的最简单方法是使用Java内置库提供的Arrays.asList()方法。这个方法接受一个数组然后将其转换为List。下面是一个示例代码:String[] array = {"Java", "Python", "Ruby", "PHP"};
List<String> list = Arrays.asList(array);
System.out.println(list);
执行上述代码,输出结果为:
[Java, Python, Ruby, PHP]
这段代码中,我们首先定义一个字符串数组,然后使用Arrays.asList()方法将其转换为List,最后打印List。这种方法非常简单,但是有一个限制:返回的List是不可变的,也就是说,我们不能对这个List进行添加、删除或修改元素的操作。如果我们对返回的List进行这类操作,会抛出UnsupportedOperationException异常。
二、创建可变List
如果我们需要对转换后的List进行添加、删除或修改元素的操作,我们需要创建一个可变的List。可以通过分配空间、添加元素等方式进行操作。下面是创建可变List的两种基本方法: 方法1:手动添加元素String[] array = {"Java", "Python", "Ruby", "PHP"};
List<String> list = new ArrayList<>();
for (String str : array) {
list.add(str);
}
System.out.println(list);
执行上述代码,输出结果为:
[Java, Python, Ruby, PHP]
这段代码中,我们首先定义了一个字符串数组,然后创建了一个空的ArrayList。之后使用for-each循环遍历数组,将每个元素添加到List中。最后再次打印List。 方法2:使用Collections.addAll() Collections.addAll()方法可以将一个数组添加到指定的集合中。我们可以使用这个方法将一个数组添加到一个可变的List中:
String[] array = {"Java", "Python", "Ruby", "PHP"};
List<String> list = new ArrayList<>();
Collections.addAll(list, array);
System.out.println(list);
执行上述代码,输出结果为:
[Java, Python, Ruby, PHP]
这段代码中,我们首先定义了一个字符串数组,然后创建了一个空的ArrayList。接着使用Collections.addAll()方法将数组添加到List中。最后再次打印List。
三、使用Java 8的Stream API
在Java 8中,我们可以使用流(Stream)API来将数组转换为List。流API提供了filter()、map()、reduce()等方法,可以使代码更加简洁。下面是使用流API的示例代码:String[] array = {"Java", "Python", "Ruby", "PHP"};
List<String> list = Arrays.stream(array)
.collect(Collectors.toList());
System.out.println(list);
执行上述代码,输出结果为:
[Java, Python, Ruby, PHP]
这段代码中,我们首先定义了一个字符串数组。使用Arrays.stream()方法将数组转换为流,并使用collect()方法将流转换为List。最后再次打印List。