Search code examples
javaarraysfor-loopmethodssum

How to sum elements of multiple arrays from a method (in Java)?


I have a set of 1d arrays that are being pulled from a method (tableMethod) - i want to grab those 1d arrays, then sum all the elements in each 1d array. How can I do that?

I have two loops

  • one that can sum a 1d array by itself
  • another that can display all the 1d arrays

I'm having difficulty combining the for loops so that it can grab each 1d array, sum it, then move on to the next 1d array, sum it, and so forth

the result should look something like:

  • total: 391

  • total: 393

  • total: 3903

  • total: 39104

  • total: 39031 ... and so forth

      int sum = 0;
      int w = 0;
      int[] arrayOne = tableMethod(table, w);
    
      for (int k = 0; k < arrayOne.length; k++) {
          sum = sum + arrayOne[k];
      }
      for (int i = 0; i < arrayOne.length; i++) {
          System.out.println(Arrays.toString(tableMethod(table, i)));
      }
      System.out.println(sum);
    

    }


Solution

  • The code should be simply using nested loops (inner loop to calculate a sum may be replaced with stream):

    int n = ... ; // a number of 1d arrays
    int total = 0;
    for (int i = 0; i < n; i++) {
        int[] arr = tableMethod(table, i);
        int sum = Arrays.stream(arr).sum();
        System.out.println(sum);
        total += sum;
    }
    System.out.println(total);