java - 无法对 ArrayList 执行算术运算

标签 java arraylist

我正在尝试查找 ArrayList 中的整数之和,但是我遇到了数据类型问题。

这是我目前的代码:

    int sum = 0;
    for (int i = 0; i < InputArray.size(); i++) {
        sum = sum + InputArray.get(i)
    }

但是这给了我错误:

error: bad operand types for binary operator '+'

我也尝试过:

int sum = 0;
for (int i = 0; i < InputArray.size(); i++) {
    int foo = Integer.parseInt(InputArray.get(i));
    sum = sum + foo;
}

但是这给了我错误:

error: no suitable method found for parseInt(object)

ArrayList 仅包含整数。

可能是什么问题?

最佳答案

ArrayList InputArray = new ArrayList(); is what I declared it as

使用 raw types 的集合元素需要进行强制转换才能访问引用类型的方法。引入泛型是为了避免这种情况。替换

ArrayList InputArray = new ArrayList();

List<Integer> inputArray = new ArrayList<>();

关于java - 无法对 ArrayList 执行算术运算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21920660/

相关文章:

java - URLClassLoader 不工作

java - 用户在 JFrame 中未输入任何内容并收到错误消息

java - 在 doInBackground 方法中使用比较器对 ArrayList 进行排序时出错

java.lang.ClassNotFoundException : com. mysql.jdbc.Driver Vertrigo 服务器 eclipse

java - devserver 中的 google 端点上出现 404

java - 如何比较 3 个 ArrayList 并获取 3 个新 ArrayList 中的差异?

java - ArrayList.clear() 与 ArrayList=null

java - 尝试修改游戏,以便程序保留未接受的答案列表并在最后打印它们。 (java)

java - 将 ArrayList<Integer> 转换为 int[] 在 Java 中不起作用

java - 在 HashSet 中存储坐标