Source of GetMaxMinSumAverage.java


  1: //GetMaxMinSumAverage.java

  3: import java.util.Arrays;
  4: import java.util.IntSummaryStatistics;
  5: import java.util.List;

  7: public class GetMaxMinSumAverage
  8: {
  9:     public static void main(String args[])
 10:     {
 11:         //We will find the maximum, minimum, sum and average of
 12:         //a list of integers.
 13:         List<Integer> integers
 14:             = Arrays.asList(2, 1, 13, 4, 15, 6, 19, 17, 8);
 15:         System.out.println("\nList of integers: " + integers);

 17:         System.out.println("\n=============");
 18:         System.out.println("Using Java 7: ");
 19:         int max = integers.get(0);
 20:         int min = integers.get(0);
 21:         int sum = integers.get(0); //Note this initialization!
 22:         for (int i = 1; i < integers.size(); i++)
 23:         {
 24:             Integer integer = integers.get(i);
 25:             if (integer.intValue() > max)
 26:             {
 27:                 max = integer.intValue();
 28:             }
 29:             if (integer.intValue() < min)
 30:             {
 31:                 min = integer.intValue();
 32:             }
 33:             sum += integer;
 34:         }
 35:         double average = (double) sum / integers.size();
 36:         System.out.println("Highest number in List: " + max);
 37:         System.out.println("Lowest number in List:  " + min);
 38:         System.out.println("Sum of all numbers:     " + sum);
 39:         System.out.println("Average of all numbers: " + average);

 41:         System.out.println("\n=============");
 42:         System.out.println("Using Java 8: ");
 43:         IntSummaryStatistics stats = integers
 44:                                      .stream()
 45:                                      .mapToInt(x -> x) //That is, from Integer to int
 46:                                      .summaryStatistics();
 47:         System.out.println("Highest number in List: " + stats.getMax());
 48:         System.out.println("Lowest number in List:  " + stats.getMin());
 49:         System.out.println("Sum of all numbers:     " + stats.getSum());
 50:         System.out.println("Average of all numbers: " + stats.getAverage());
 51:     }
 52: }
 53: /*  Output:

 55:     List of integers: [2, 1, 13, 4, 15, 6, 19, 17, 8]

 57:     =============
 58:     Using Java 7:
 59:     Highest number in List: 19
 60:     Lowest number in List:  1
 61:     Sum of all numbers:     85
 62:     Average of all numbers: 9.444444444444445

 64:     =============
 65:     Using Java 8:
 66:     Highest number in List: 19
 67:     Lowest number in List:  1
 68:     Sum of all numbers:     85
 69:     Average of all numbers: 9.444444444444445
 70: */