We can use functional Programming in Java to calculate sum of an int array.
You can watch my live coding video to see how it is done.
Traditional Way :-
int sum = 0; for(int intValue : ints) sum += intValue;
Functional Programming Way 1 :-
Arrays.stream(ints).sum();
Functional Programming Way 2 :-
Arrays.stream(ints).reduce(0, Integer::sum);
Functional Programming Way 3:-
final AtomicInteger sumInt = new AtomicInteger(0); Arrays.stream(ints).forEach( intValue -> sumInt.set( intValue + sumInt.get()));
Source Code:-
import java.util.Arrays; import java.util.concurrent.atomic.AtomicInteger; public class SumOfIntArray{ public static void main(String ...args){ final int[] ints = {1, 2, 3, 4, 5, 6}; int sum = 0; for(int intValue : ints) sum += intValue; System.out.println("Tradiiontal Sum " + sum); sum = 0; sum = Arrays.stream(ints).sum(); System.out.println("Functional Stream 'sum' function Sum " + sum); sum = 0; sum = Arrays.stream(ints).reduce(0, Integer::sum); System.out.println("Functional Stream 'reduce' function Sum " + sum); final AtomicInteger sumInt = new AtomicInteger(0); Arrays.stream(ints).forEach( intValue -> sumInt.set( intValue + sumInt.get())); System.out.println("Functional Stream should not be done this way " + sumInt.get()); } }