1. Find, if all elements of a collection that matches the specified condition.
// Declare and Initialize the Collection
Set<Integer> intSet = new HashSet<Integer>();
// Add Elements
intSet.add(1);
intSet.add(2);
intSet.add(3);
intSet.add(4);
// Specify the Predicate or the Condition using Lambda expressions
Predicate<Integer> moreThan2Pred = (p) -> (p > 2);
// Use the stream method allMatch to see if all elements fulfils the Predicate.
System.out.println(intSet.stream().allMatch(moreThan2Pred)); // Prints False.
2. Find, if any element of the collection matches the specified condition.
// Declare and Initialize the Collection
Set<Integer> intSet = new HashSet<Integer>();
// Add Elements
intSet.add(1);
intSet.add(2);
intSet.add(3);
intSet.add(4);
// Specify the Predicate or the Condition using Lambda expressions
Predicate<Integer> moreThan2Pred = (p) -> (p > 2);
// Use the stream method anyMatch to see if all elements fulfils the Predicate.
System.out.println(intSet.stream().anyMatch(moreThan2Pred)); // Prints True.
3. Find, if no element of the collection matches the specified condition ( Inverse of anyMatch )
// Declare and Initialize the Collection
Set<Integer> intSet = new HashSet<Integer>();
// Add Elements
intSet.add(1);
intSet.add(2);
intSet.add(3);
intSet.add(4);
// Specify the Predicate or the Condition using Lambda expressions
Predicate<Integer> moreThan2Pred = (p) -> (p > 2);
// Use the stream method noneMatch to see if all elements fulfils the Predicate.
System.out.println(intSet.stream().noneMatch(moreThan2Pred)); // Prints False.
4. Count number of collection elements.
// Declare and Initialize the Collection
Set<Integer> intSet = new HashSet<Integer>();
// Add Elements
intSet.add(1);
intSet.add(2);
intSet.add(3);
intSet.add(4);
// Use the stream method count to see if all elements fulfils the Predicate.
System.out.println(intSet.stream().count); // Prints 4.
5. Find the Average of all collection elements.
// Declare and Initialize the Collection
Set<Integer> intSet = new HashSet<Integer>();
// Add Elements
intSet.add(1);
intSet.add(2);
intSet.add(3);
intSet.add(4);
// Use the stream and Collector to find the average of all elements.
System.out.println(intSet.stream().collect(Collectors.averagingInt(p->((Integer)p)))); \\ Prints 2.5
6. Elements Group by even or Odd
// Declare and Initialize the Collection
Set<Integer> intSet = new HashSet<Integer>();
// Add Elements
intSet.add(1);
intSet.add(2);
intSet.add(3);
intSet.add(4);
// Use the stream and Collector to Group by Even and Odd
System.out.println(intSet.stream().collect(Collectors.groupingBy(p->((Integer)p)%2))); \\ Prints {0=[2, 4], 1=[1, 3]}
7. Sum all collection elements
// Declare and Initialize the Collection
Set<Integer> intSet = new HashSet<Integer>();
// Add Elements
intSet.add(1);
intSet.add(2);
intSet.add(3);
intSet.add(4);
// Declare and Initialize the Collection
Set<Integer> intSet = new HashSet<Integer>();
// Add Elements
intSet.add(1);
intSet.add(2);
intSet.add(3);
intSet.add(4);
// Specify the Predicate or the Condition using Lambda expressions
Predicate<Integer> moreThan2Pred = (p) -> (p > 2);
// Use the stream method allMatch to see if all elements fulfils the Predicate.
System.out.println(intSet.stream().allMatch(moreThan2Pred)); // Prints False.
2. Find, if any element of the collection matches the specified condition.
// Declare and Initialize the Collection
Set<Integer> intSet = new HashSet<Integer>();
// Add Elements
intSet.add(1);
intSet.add(2);
intSet.add(3);
intSet.add(4);
// Specify the Predicate or the Condition using Lambda expressions
Predicate<Integer> moreThan2Pred = (p) -> (p > 2);
// Use the stream method anyMatch to see if all elements fulfils the Predicate.
System.out.println(intSet.stream().anyMatch(moreThan2Pred)); // Prints True.
3. Find, if no element of the collection matches the specified condition ( Inverse of anyMatch )
// Declare and Initialize the Collection
Set<Integer> intSet = new HashSet<Integer>();
// Add Elements
intSet.add(1);
intSet.add(2);
intSet.add(3);
intSet.add(4);
// Specify the Predicate or the Condition using Lambda expressions
Predicate<Integer> moreThan2Pred = (p) -> (p > 2);
// Use the stream method noneMatch to see if all elements fulfils the Predicate.
System.out.println(intSet.stream().noneMatch(moreThan2Pred)); // Prints False.
4. Count number of collection elements.
// Declare and Initialize the Collection
Set<Integer> intSet = new HashSet<Integer>();
// Add Elements
intSet.add(1);
intSet.add(2);
intSet.add(3);
intSet.add(4);
// Use the stream method count to see if all elements fulfils the Predicate.
System.out.println(intSet.stream().count); // Prints 4.
5. Find the Average of all collection elements.
// Declare and Initialize the Collection
Set<Integer> intSet = new HashSet<Integer>();
// Add Elements
intSet.add(1);
intSet.add(2);
intSet.add(3);
intSet.add(4);
// Use the stream and Collector to find the average of all elements.
System.out.println(intSet.stream().collect(Collectors.averagingInt(p->((Integer)p)))); \\ Prints 2.5
6. Elements Group by even or Odd
// Declare and Initialize the Collection
Set<Integer> intSet = new HashSet<Integer>();
// Add Elements
intSet.add(1);
intSet.add(2);
intSet.add(3);
intSet.add(4);
// Use the stream and Collector to Group by Even and Odd
System.out.println(intSet.stream().collect(Collectors.groupingBy(p->((Integer)p)%2))); \\ Prints {0=[2, 4], 1=[1, 3]}
7. Sum all collection elements
// Declare and Initialize the Collection
Set<Integer> intSet = new HashSet<Integer>();
// Add Elements
intSet.add(1);
intSet.add(2);
intSet.add(3);
intSet.add(4);
// Use the stream and collectors to sum all elements.
System.out.println(intSet.stream().collect(Collectors.summingInt(p->(Integer)p)));
8. Populate a List using Set elements.
// Declare and Initialize the Collection
Set<Integer> intSet = new HashSet<Integer>();
// Add Elements
intSet.add(1);
intSet.add(2);
intSet.add(3);
intSet.add(4);
Set<Integer> intSet = new HashSet<Integer>();
// Add Elements
intSet.add(1);
intSet.add(2);
intSet.add(3);
intSet.add(4);
// Use the stream and collectors to get List out of Set
List li = intSet.stream().collect(Collectors.toList());
System.out.println(li); // Prints [1, 2, 3, 4]
9. Get the complete Summary of Collection Elements
Populate a List using Set elements.
// Declare and Initialize the Collection
Set<Integer> intSet = new HashSet<Integer>();
// Add Elements
intSet.add(1);
intSet.add(2);
intSet.add(3);
intSet.add(4);
Set<Integer> intSet = new HashSet<Integer>();
// Add Elements
intSet.add(1);
intSet.add(2);
intSet.add(3);
intSet.add(4);
// Use the stream and collectors to Summarize all Integer elements
System.out.println(intSet.stream().collect(Collectors.summarizingInt(p->((Integer)p)))); // Prints IntSummaryStatistics{count=4, sum=10, min=1, average=2.500000, max=4}
10. Combine two Summaries and Generate a new Summary.
Populate a List using Set elements.
// Declare and Initialize the Collection
Set<Integer> intSet = new HashSet<Integer>();
Set<Integer> intSet2 = new HashSet<Integer>();
// Add Elements
intSet.add(1);
intSet.add(2);
intSet.add(3);
intSet.add(4);
intSet2.add(1);
intSet2.add(2);
intSet2.add(3);
intSet2.add(4);
Set<Integer> intSet = new HashSet<Integer>();
Set<Integer> intSet2 = new HashSet<Integer>();
// Add Elements
intSet.add(1);
intSet.add(2);
intSet.add(3);
intSet.add(4);
intSet2.add(1);
intSet2.add(2);
intSet2.add(3);
intSet2.add(4);
// Use the stream and collectors to Summarize all Integer elements
IntSummaryStatistics summary = intSet.stream().collect(Collectors.summarizingInt(p->((Integer)p)));
summary.combine(intSet2.stream().collect(Collectors.summarizingInt(p->((Integer)p))));
System.out.println(summary); // Prints IntSummaryStatistics{count=8, sum=20, min=1, average=2.500000, max=4}
summary.combine(intSet2.stream().collect(Collectors.summarizingInt(p->((Integer)p))));
System.out.println(summary); // Prints IntSummaryStatistics{count=8, sum=20, min=1, average=2.500000, max=4}
11. Create a Map using Set elements
Populate a List using Set elements.
// Declare and Initialize the Collection
Set<Integer> intSet = new HashSet<Integer>();
// Add Elements
intSet.add(1);
intSet.add(2);
intSet.add(3);
intSet.add(4);
Set<Integer> intSet = new HashSet<Integer>();
// Add Elements
intSet.add(1);
intSet.add(2);
intSet.add(3);
intSet.add(4);
// Use the stream and collectors to get a Map out of Set
System.out.println(intSet.stream().collect((Collectors.toMap(p->(Integer)p,q->((Integer)q)*500)))); // Prints {1=500, 2=1000, 3=1500, 4=2000}
12. Get count of elements greater than 1
Populate a List using Set elements.
// Declare and Initialize the Collection
Set<Integer> intSet = new HashSet<Integer>();
// Add Elements
intSet.add(1);
intSet.add(2);
intSet.add(3);
intSet.add(4);
Set<Integer> intSet = new HashSet<Integer>();
// Add Elements
intSet.add(1);
intSet.add(2);
intSet.add(3);
intSet.add(4);
// Use Stream, Predicate and Filter to get the count of elements more than 1
System.out.println(intSet.stream().filter(moreThan2Pred).count()); // Prints 3
13. Get all elements greater than 2, sort them and then push them to a new set
Populate a List using Set elements.
// Declare and Initialize the Collection
Set<Integer> intSet = new HashSet<Integer>();
// Add Elements
intSet.add(1);
intSet.add(2);
intSet.add(3);
intSet.add(4);
// Set the predicate or the condition for filtering the elements.
Predicate<Integer> moreThan2Pred = (p) -> (p > 1);
Set<Integer> intSet = new HashSet<Integer>();
// Add Elements
intSet.add(1);
intSet.add(2);
intSet.add(3);
intSet.add(4);
// Set the predicate or the condition for filtering the elements.
Predicate<Integer> moreThan2Pred = (p) -> (p > 1);
// Use Filter to refine the element set, sort to Sort and Collectors.toSet to get a set out of Stream.
intSet = intSet.stream().filter(moreThan2Pred).sorted().collect(Collectors.toSet());
System.out.println(intSet); // Prints [2, 3, 4]
14. Get the Maximum number out of the Integer List.
// Declare and Initialize the Collection
List<Integer> intList = new ArrayList<Integer>();
// Add Elements
intList.add(1);
intList.add(2);
intList.add(3);
intList.add(4);
System.out.println(intList.stream().reduce(Math::max).get()); // Prints 1
14. Get the Maximum number out of the Integer List.
// Declare and Initialize the Collection
List<Integer> intList = new ArrayList<Integer>();
// Add Elements
intList.add(1);
intList.add(2);
intList.add(3);
intList.add(4);
System.out.println(intList.stream().reduce(Math::max).get()); // Prints 1