Open In App

Sum of list with stream filter in Java

Last Updated : 15 May, 2021
Improve
Improve
Like Article
Like
Save
Share
Report

We generally iterate through the list when adding integers in a range, but java.util.stream.Stream has a sum() method that when used with filter() gives the required result easily.

Java




// Simple method (without filter) to find sum of a list
import java.util.*;
 
class Addition {
    public static void main(String[] args)
    {
        // create a list of integers
        List<Integer> list = new ArrayList<Integer>();
 
        // add elements to the list
        list.add(1);
        list.add(5);
        list.add(6);
        list.add(7);
        list.add(8);
        list.add(9);
        list.add(10);
 
        System.out.println(sum(list));
    }
 
    public static int sum(List<Integer> list)
    {
        // iterator for accessing the elements
        Iterator<Integer> it = list.iterator();
 
        int res = 0;
        while (it.hasNext()) {
            int num = it.next();
 
            // adding the elements greater than 5
            if (num > 5) {
                res += num;
            }
        }
 
        return res;
    }
}


Output: 

40

 

The above task can be easily performed using sum() method with filter() method 
 

Java




// Using stream filter to find sum of a list
import java.util.*;
 
class Addition {
    public static void main(String[] args)
    {
        // create a list of integers
        List<Integer> list = new ArrayList<Integer>();
 
        // add elements to the list
        list.add(1);
        list.add(5);
        list.add(6);
        list.add(7);
        list.add(8);
        list.add(9);
        list.add(10);
 
        System.out.println(sum(list));
    }
 
    public static int sum(List<Integer> list)
    {
        // create a stream of integers
        // filter the stream
        // add the integers
        return list.stream()
            .filter(i -> i > 5)
            .mapToInt(i -> i)
            .sum();
    }
}


Output: 

40

 



Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads