在本示例中,我们将学习如何借助Java中的addAll()方法和Stream类合并两个列表。
要理解此示例,您应该了解以下Java编程主题:
示例1:使用addAll()合并两个列表
import java.util.ArrayList; import java.util.List; class Main { public static void main(String[] args) { //创建第一个列表 List<Integer> prime = new ArrayList<>(); prime.add(2); prime.add(3); prime.add(5); System.out.println("第一个列表: " + prime); //创建第二个列表 List<Integer> even = new ArrayList<>(); even.add(4); even.add(6); System.out.println("第二个列表: " + even); //创建合并列表 List<Integer> numbers = new ArrayList<>(); numbers.addAll(prime); numbers.addAll(even); System.out.println("合并列表: " + numbers); } }
输出结果
第一个列表: [2, 3, 5] 第二个列表: [4, 6] 合并列表: [2, 3, 5, 4, 6]
在上面的示例中,有两个名为 prime 和 even 的列表。在这里,我们使用Java ArrayList addAll()方法,将 prime和 even 的所有元素添加到名为 numbers 的新列表中。
示例2:使用Stream类合并两个列表
import java.util.ArrayList; import java.util.Arrays; import java.util.List; import java.util.stream.Collectors; import java.util.stream.Stream; class Main { public static void main(String[] args) { // 创建第一个列表 // asList()将数组转换为arraylist List<Integer> prime = new ArrayList<>(Arrays.asList(2, 3, 5)); System.out.println("First List: " + prime); // 创建第二个列表 List<Integer> even = new ArrayList<>(Arrays.asList(4, 6)); System.out.println("Second List: " + even); // 将两个列表都转换为流 Stream<Integer> list1 = prime.stream(); Stream<Integer> list2 = even.stream(); // 合并两个流 Stream<Integer> merged = Stream.concat(list1, list2); // 将合并的流转换为列表 List<Integer> numbers = merged.collect(Collectors.toList()); System.out.println("Merged List: " + numbers); } }
输出结果
First List: [2, 3, 5] Second List: [4, 6] Merged List: [2, 3, 5, 4, 6]
在上面的示例中,我们使用Stream类合并了两个列表。这里,
stream() - 将列表转换为流
concat() - 合并两个流
collect(Collectors.toList()) - 将流转换为列表
要了解有关流的更多信息,请访问Java Stream 类。