2017-06-05 71 views
-1

我想获得int []数组存储的int值的总和。代码仍然有错误。有什么代码可以使这行代码看起来简化吗?我想在没有数据库的情况下制作52周的金钱挑战应用程序。如何获得int []的前一个值,使用java添加两个int值5

我有这个公式: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

请提一下你得到的错误类型。 – DreamCoder

+0

看到这个简单的答案。 https://stackoverflow.com/a/4550703/2815219 –

+0

@RamanSahasi我已经访问过你评论过的链接,它不回答我的问题。我在问我如何添加两个值添加到这两个int值的前一个值的添加int元素的前一个值。 –

回答

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 
2

如果你是在Java的8,您可以使用

int sum = Arrays.stream(total).sum(); 

否则的老式方法

for(int i : total) { 
    sum += i; 
} 
+0

我很欣赏为此主题添加评论的努力,但该行代码不是此问题的答案。我想要获得总值的前一个值并将其添加到前面的总值中。 –

相关问题