簡體   English   中英

java 8總結整數列表

[英]java 8 summing up a list of integer

代碼

public static int simpleArraySum(List<Integer> ar) {
    int sum = 0;
    for (int i = 0; i < ar.length; i++) {
        sum = sum + ar[i];
    }
    return sum;
}

我認為問題出在哪里

我將如何迭代List<Integer>類型是不同的int[] ar

錯誤

Solution.java:28: error: cannot find symbol
        for (int i = 0; i < ar.length; i++) {
                              ^ 
  
symbol:   variable length
  location: variable ar of type List<Integer>

Solution.java:29: error: array required, but List<Integer> found
            sum = sum + ar[i];
                      ^ 

2 errors

我嘗試了什么:

ar.length更改為ar.size()后我仍然有錯誤

Solution.java:26: error: array required, but List<Integer> found
        sum = sum + ar[i];
                      ^
1 error

首先,您需要使用getlist (不是數組)中檢索值

  • length更改為size
  • 使用get獲取索引i處的值
public static int simpleListSum(List<Integer> ar) {
    int sum = 0;
    for (int i = 0; i < ar.size(); i++) {
        sum = sum + ar.get(i);
    }
    return sum;
}

但是您也可以使用沒有索引的增強 for 循環來做到這一點。 這也適用於數組。

public static int simpleListSum(List<Integer> ar) {
    int sum = 0;
    for (int val : ar) {
       sum += val;
    }
    return sum;
}


暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM