我在googling它,似乎无法找到语法。我arraylist
可能会有所不同根据用户的设置进行填充,所以我初始化它在java中添加多个项目到已经初始化的arraylist
ArrayList<Integer> arList = new ArrayList<Integer>();
现在我想补充整数几百没有一个做一个有arList.add(55);
我在googling它,似乎无法找到语法。我arraylist
可能会有所不同根据用户的设置进行填充,所以我初始化它在java中添加多个项目到已经初始化的arraylist
ArrayList<Integer> arList = new ArrayList<Integer>();
现在我想补充整数几百没有一个做一个有arList.add(55);
如果您有另一个列表,其中包含您想添加的所有项目,您可以执行arList.addAll(otherList)
。另外,如果你总是添加相同的元素列表,你可以创建一个初始化为包含所有你的价值观和使用addAll()
方法一个新的列表,像
Integer[] otherList = new Integer[] {1, 2, 3, 4, 5};
arList.addAll(Arrays.asList(otherList));
,或者,如果你不这样做要创建不必要的数组:
arList.addAll(Arrays.asList(1, 2, 3, 4, 5));
否则,你就必须有某种循环单独地添加值到列表中。
这些整数的“来源”是什么?如果是,你需要硬编码在源代码中的东西,你可以做
arList.addAll(Arrays.asList(1,1,2,3,5,8,13,21));
这绝对是最简洁的做法。 – krispy 2014-03-27 19:13:25
我相信上面的答案不正确,具有多个值初始化的正确方法应该是这样......
int[] otherList ={1,2,3,4,5};
所以用正确初始化的完整的答案是这样的
int[] otherList ={1,2,3,4,5};
arList.addAll(Arrays.asList(otherList));
这不会编译,因为int是原始类型,而Arrays.asList()在原始类型的数组上不能正常工作。所选答案使用Integer,这是正确的方法。 – krispy 2014-03-27 19:15:58
如果您正在寻找避免多个代码行以节省空间,也许这句法可能是有用的:
java.util.ArrayList lisFieldNames = new ArrayList() {
{
add("value1");
add("value2");
}
};
删除新的生产线,可以显示它压缩为:
java.util.ArrayList lisFieldNames = new ArrayList() {
{
add("value1"); add("value2"); (...);
}
};
仍然需要多次调用'add()',即使将它压缩到一行也会增加混乱 – 2017-08-20 14:11:50
我会在String Ej中设置值。 String theValues =“1,20,2,1001”; (手动或从文件加载)。然后将它传递给Array:Integer [] theArray = theValues.split(“,”,-1);一旦你有了这个数组,很容易将它传递给ArrayList:ArrayList
真的,我觉得有一个更好的办法?哦,循环的作品。 Thx – batoutofhell 2013-03-05 01:12:14
是的,除非你想创建一个新的列表,并用你所有的值进行初始化(参见上面的编辑),这些都是你的选择。 – scaevity 2013-03-05 01:21:11