import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;

class StreamFilter {

	public static void main(String[] args) {

		List<Wrapper> list = new ArrayList<>();
		list.add(new Wrapper("true"));
		list.add(new Wrapper("false"));
		list.add(new Wrapper("true"));

		BigDecimal total = list
				.stream()
				.filter(w -> "true".equals(w.getFilter())) // optional
				.map(Wrapper::getValue)
				.reduce(BigDecimal.ZERO, BigDecimal::add);

		System.out.println(total); // it will print 20
	}

}

class Wrapper {

	BigDecimal value;
	String filter;

	Wrapper(String filter) {
		value = BigDecimal.TEN; // mocked value
		this.filter = filter;
	}

	public BigDecimal getValue() {
		return value;
	}

	public String getFilter() {
		return filter;
	}

}