我正在尝试将变量输入到ArrayList中,然后添加所有元素。我怎样才能做到这一点?我试过的代码如下。感谢。
ArrayList<String> aListNumbers = new ArrayList<String>();
int abc = 23;
aListNumbers.add("abc");
aListNumbers.add("2");
aListNumbers.add("3");
//Java ArrayList Sum All Elements
int sum = 0;
for(int i=0; i < aListNumbers.size(); i++){
sum = sum + Integer.parseInt(aListNumbers.get(i));
}
System.out.println("Sum of all elements of ArrayList is " + sum);
答案 0 :(得分:5)
aListNumbers.add("abc");
这里您没有将名为abc
的变量的内容添加到列表中。您将字符串“abc”添加到列表中。当代码试图将字符串“abc”解析为数字时,这将导致NumberFormatException
- 因为“abc”不是数字。
aListNumbers.add(abc);
这更接近你想要的,但它仍会抱怨,因为变量abc
不是String。由于aListNumbers
期望字符串(因为它是ArrayList<String>
),因此尝试添加任何其他内容都会使编译器失望。
aListNumbers.add(Integer.toString(abc));
会工作。
答案 1 :(得分:-1)
使用ArrayList&lt; Integer&gt;而不是String?
答案 2 :(得分:-4)
OP不知道如何在java中编码。错误很明显,不值得这个网站。
BUT!
如果你花时间打字 - 我宁愿给出答案。虽然自从我穿着这些鞋子已经过了几十年 - 我记得很清楚,当一个最简单的事情使得一个人坚持几个小时,如果不是几天 - 我很幸运能够在同一个房间进行编码并且非常有耐心(不仅仅是知识渊博)人。所以我是为了给这个家伙一些懈怠。
答案是 - 绝对使用ArrayList<Integer>
但也在添加 - 不要add("2")
- 这是添加一个字符串,而不是add(2)
,它会添加一个整数
如果您真的想要解析这些字符串,那么您应该String abc="23";
更有价值的信息 - 找到示例 - 网络上充满了它们 - 让您的问题得到更快的回答并避免不屑。
和平