Java 将3个arraylist合并为一个

Java 将3个arraylist合并为一个,java,list,merge,arraylist,Java,List,Merge,Arraylist,我想在java中将3个arraylist合并为一个。有人知道做这样的事情最好的方法是什么吗?使用。类似的方法应该可以工作(假设列表包含String对象;您应该相应地进行更改) List combined=new ArrayList(); 合并.addAll(firstArrayList); 合并的.addAll(secondArrayList); 合并。添加全部(第三方列表); 更新 我可以从您的评论中看出,您实际上可能正在尝试创建一个2D列表。如果是这样,则应使用以下代码: List<

我想在java中将3个arraylist合并为一个。有人知道做这样的事情最好的方法是什么吗?

使用。类似的方法应该可以工作(假设列表包含
String
对象;您应该相应地进行更改)

List combined=new ArrayList();
合并.addAll(firstArrayList);
合并的.addAll(secondArrayList);
合并。添加全部(第三方列表);
更新 我可以从您的评论中看出,您实际上可能正在尝试创建一个2D列表。如果是这样,则应使用以下代码:

List<List<String>> combined2d = new ArrayList<List<String>>();
combined2d.add(firstArrayList);
combined2d.add(secondArrayList);
combined2d.add(thirdArrayList);
List combined2d=new ArrayList();
combined2d.add(firstArrayList);
combined2d.add(secondArrayList);
combined2d.add(第三个数组列表);

如何使用java.util.Arrays.asList简化合并

List<String> one = Arrays.asList("one","two","three");
List<String> two = Arrays.asList("four","five","six");
List<String> three = Arrays.asList("seven","eight","nine");

List<List<String>> merged = Arrays.asList(one, two, three);
List one=Arrays.asList(“一”、“二”、“三”);
列表二=数组。asList(“四”、“五”、“六”);
列表三=数组。asList(“七”、“八”、“九”);
List merged=Arrays.asList(一、二、三);
使用Java 8流:

名单

List<List<String>> listOfList = Stream.of(list1, list2, list3).collect(Collectors.toList());
List listOfList=Stream.of(list1、list2、list3.collect(Collectors.toList());
字符串列表

List<String> list = Stream.of(list1, list2, list3).flatMap(Collection::stream).collect(Collectors.toList());
List List=Stream.of(list1,list2,list3).flatMap(Collection::Stream).collect(Collectors.toList());
使用Java 9 List.of静态工厂方法(警告:此列表是不可变的,不允许null)

List=List.of​(列表1、列表2、列表3);

其中
list1、list2、list3
属于
List

Xm类型,该解决方案是关于创建二维阵列列表。我想把3个列表并排放在一个新的列表中。@snake plissken:你在问题中没有提到2D列表。不过,我已经更新了我的答案,使之也包含了2D解决方案。@snakeplissken-这个答案会达到你的预期,不涉及2D。这比第一个答案要好得多。这是一种将列表合并到2D列表中的更简洁的方法。注意:您通常会将其称为
数组。asList()
注意,这会导致固定大小的
列表,而不是
数组列表。OP专门调用
ArrayList
。我不确定他们是想要1D还是2D,但肯定是
ArrayList
。我很困惑。这个问题没有提到2D列表,但公认的答案和评论讨论2D,而另一个答案专门针对2D列表。那么,这是关于获取一些
列表
并生成一个包含所有原始元素的单个
列表
,还是关于生成一个包含每个原始元素的
列表
?输出是
数组列表
的一个实例而不仅仅是
列表
是否重要?
List<String> list = Stream.of(list1, list2, list3).flatMap(Collection::stream).collect(Collectors.toList());
List<List<String>> = List.of​(list1, list2, list3);