计算每第3个元素的总和 - 数组java

时间:2017-05-07 09:21:14

标签: java arrays

我有一个初始的String数组(FileContent),我已将其转换为ArrayList(MatchingContent)。

String FileContent =“2017-04-03,11:25,2; 2017-04-02,11:30,8; 2017-04-03,14:42,9”;

现在,我需要迭代每个第3个元素并计算它们的总和,但是下面的部分不起作用:

    Integer[] intarray=new Integer[MatchingContent.length];

    for (int i=0; i<MatchingContent.length; i+=3)
    {
        int sum = 0;

        intarray [i] = Integer.parseInt(MatchingContent[i]);

        sum = sum + intarray[i];

    }

1 个答案:

答案 0 :(得分:1)

你在循环中声明(并初始化)sum,这意味着它会在每次迭代中初始化,覆盖(或丢弃)前一个值。我们需要做的是更改声明并在循环外执行,这样,前一个值将被保留。

另外,由于我们将结果存储在Integer[] intarray中,因此您不需要sum,因此,不需要单独存储单个元素。以下是示例:

int sum = 0;
for (int i=0; i<MatchingContent.length; i++){
    if(i % 3 == 0) {
        sum += Integer.parseInt(MatchingContent[i]);
    }
}

或者

int sum = 0;
for (int i=0; i<MatchingContent.length; i+=3){
    sum += Integer.parseInt(MatchingContent[i]);
}