Java中整数值列表的总和(JDK 1.7)

时间:2013-12-25 09:06:07

标签: java

有人可以建议,如何获得前几个列表元素(整数)的总和?

注意:我的Java版本:“1.7.0_07”。

以下是代码:

    Integer sum=new Integer(0);
    for(int i=0;i<3;i++)
    sum=sum+list.get(i);

错误: 对于参数类型Integer,Object

,运算符+未定义

4 个答案:

答案 0 :(得分:2)

我相信你已经将你的名单宣布为原始类型,即

List list = new List();

您需要做的是:

List<Integer> list = new List<Integer>();

或者你必须在每次执行list.get()之后进行类型转换。

sum=sum+(Integer)list.get(i);

编辑:关于你的其他问题

  

如果我定义喜欢 - &gt; '列表列表',看到错误建议   像“语法错误,参数化类型仅在源时可用   等级为1.5“

答案:

  

我的猜测是,当你用jdk 1.6运行eclipse时,它就是   实际配置了不同的默认jre。看到   window-&gt; preferences-&gt; java-&gt;安装JRE并确保   检查JRE是1.6。 (我希望你得到这个错误   在某些IDE中工作)如果默认的JRE确实是1.6,那么很可能   这是一个项目特定的设置。看到该项目是   配置为使用正确的jre。

答案 1 :(得分:2)

您的列表应定义为:

List<Integer> list = whateverCreatesYourList();

然后你可以:

Integer sum = Integer.valueOf(0);
for(Integer i: list){
    sum += i;
}

重要的部分不是使用原始List类型,而是使用完全定义的通用List<Integer>

答案 2 :(得分:0)

    ArrayList<Integer> list = new ArrayList<Integer>();
    list.add(5);
    list.add(5);
    list.add(5);

    Integer sum = new Integer(0);
    for (int i = 0; i < 3; i++) {
        sum = sum + list.get(i);
    }

    System.out.println(sum);

答案 3 :(得分:0)

检查此样本

List<Integer> list = new ArrayList<Integer>();
list.add(10);
list.add(20);
list.add(30);
Integer sum = 0;
int listSize = list.size();
for (int i = 0; i < 3; i++) {
    if (i < listSize) {
       sum += list.get(i);
    }
 }