我想得到int []数组的存储int值的总和。代码仍有错误。是否有任何代码可以使这行代码看起来简化?我想在没有数据库的情况下制作52周的资金挑战应用程序。
我有这个公式:iA + sum = total [] + aA = tA;
我遇到的错误是前一个值没有被前一个值添加。
PS。周,iA(初始金额),aA(添加金额),总和,sT是int。 tA现在被添加到总数[]。
PSS:对于每个标记此问题并且有重复问题的人,我已经看到了这个问题而且它没有回答我的问题。该帖子有自己的值由程序员/编码器创建,我要求如何将前一个元素添加到两个添加的整数值的值。我已经尝试过该问题中给出的解决方案,并且它不能用于我的代码。它给出了不同的值(不需要的值)。
int[] total = new int[weeks + 1];
int sum = 0;
int tA = 0;
int ai = 0;
for(int sT = 1 ; sT <= weeks; sT++){ // error
sum += iA;
System.out.println("The payable for the week " + sT + " is: " + sum);
total[sT] = sum;
tA = total[sT];
if(sT == 1){
System.out.println("if: " + tA);
}
else if(sT == 2){
tA += iA;
System.out.println("else if: " + tA);
}
else{
tA += aA;
System.out.println("else: " + tA);
}
}
System.out.println(Arrays.toString(total)); //print stored values of array
答案 0 :(得分:2)
如果您使用的是Java 8,则可以使用
int sum = Arrays.stream(total).sum();
否则是老式的方式
for( int i : total) {
sum += i;
}
答案 1 :(得分:0)
for(int sT = 1 ; sT <= weeks; sT++){
sum += iA;
System.out.println("The payable for the week " + sT + " is: " + sum);
tA = sum;
if(sT == 1){
System.out.println("if: " + tA);
total[sT] = tA;
}
else if(sT == 2){
tA = iA + sum;
System.out.println("else if: " + tA);
total[sT] = tA;
}
else{
tA = sum + total[sT - 1];
System.out.println("else: " + tA);
total[sT] = tA;
}
}
System.out.println(Arrays.toString(total)); //print stored values of array