是否有一种方法可以连接多个ArrayLists
?
例如:
ArrayList<Integer> a
ArrayList<Integer> b
ArrayList<Integer> c
ArrayList<Integer> d = a + b + c
其中d是单个ArrayList<Integer>
,其中包含保留订单中a,b,c的所有值
答案 0 :(得分:6)
使用addAll()
方法
d.addAll(a);
d.addAll(b);
d.addAll(c);
答案 1 :(得分:2)
集合框架的一个不幸的方面是没有内置列表代数,但像Guava这样的东西可以提供类似于你想要的类型的运算符的方法。直接的java运行时库代码看起来像
List< Integer > d = new ArrayList<>( a );
d.addAll( b );
d.addAll( c );
答案 2 :(得分:2)
addAll方法和ArrayList构造函数可以解决这个问题。 (Java中没有运算符覆盖)
ArrayList<Integer> d = new ArrayList<Integer>(a);
d.addAll(b);
d.addAll(c);
请注意,您可以将所有变量声明为List或Collection,这是一种更好的做法。这样您就可以将ArrayList作为Collection实现。
Collection<Integer> d = new ArrayList<Integer>(a);