如果我ArrayList
的类型不是Integer
(它们被称为对象),我怎样才能获得列表中的总和? newlist.get(i)
将返回Object
,我无法与“sum”相加。
ArrayList newlist = new ArrayList();
newlist.add(1);
newlist.add(2);
newlist.add(3);
newlist.add(4);
for (int i = 0; i < newlist.size(); i++) {
sum = newlist.get(i) + sum;
}
答案 0 :(得分:1)
您可以检查运行时类型并向下转发Integer
s:
for(int i = 0; i < newlist.size(); i++){
Object o = newlist.get(i);
if (o instanceof Integer) {
sum += ((Integer) o);
}
}
答案 1 :(得分:0)
如果ArrayList
只是填充了整数,那么你的代码将是这样的:
ArrayList<Integer> newlist = new ArrayList<Integer>();
newlist.add(1);
newlist.add(2);
newlist.add(3);
newlist.add(4);
int sum = 0;
for (int i = 0; i < newlist.size(); i++) {
sum = newlist.get(i) + sum;
}