Java 程序合并两个列表(List) - Java教程

由网友 大卫 发布 阅读 14

Java 程序合并两个列表(List) - Java教程

Java 实例大全

在本示例中,我们将学习如何借助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 类

Java 实例大全

Java 程序字符串 == 运算符和equals()方法区别 Java 程序检测LinkedList中是否存在循环