From aff870c682b9eee369b9e41f04d11a7de115f098 Mon Sep 17 00:00:00 2001 From: 643f98e1a5b4b12fb7d55835 <643f98e1a5b4b12fb7d55835@devide> Date: Wed, 19 Apr 2023 07:38:40 +0000 Subject: [PATCH] Wed Apr 19 07:38:40 UTC 2023 inscode --- Main.java | 28 ++++++++++++++++++++++++++-- 1 file changed, 26 insertions(+), 2 deletions(-) diff --git a/Main.java b/Main.java index 1a68b2d..d55248b 100644 --- a/Main.java +++ b/Main.java @@ -1,5 +1,29 @@ -class Main { +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; + +import static java.util.stream.Collectors.toList; +public class Main { public static void main(String[] args) { - System.out.println("Hello world!"); + List list1 = Arrays.asList("A", "B", "C"); + List list2 = Arrays.asList("1", "2"); + List result = product(list1, list2); + result.forEach(System.out::println); +} + +/** + * @param lists 可变长度参数列表 + * */ +public static List product(List... lists) { + List temp = new ArrayList<>(); + for (List list : lists) { + if (temp.isEmpty()) { + temp = list; + } else { + // stream流 flatMap 和 map 方法 + temp = temp.stream().flatMap(o1 -> list.stream().map(o2 -> o1 + " " + o2)).collect(toList()); + } + } + return temp; } } \ No newline at end of file -- GitLab