Java IntStream allMatch() Method

The allMatch() method in Java, part of the java.util.stream.IntStream interface, is used to check if all elements of the stream match a given predicate. This method is useful when you need to verify that every element in a stream satisfies a specific condition.

Table of Contents

  1. Introduction
  2. allMatch() Method Syntax
  3. Understanding allMatch()
  4. Examples
    • Basic Usage
    • Using allMatch() with Custom Predicate
  5. Real-World Use Case
  6. Conclusion

Introduction

The allMatch() method returns true if all elements of the stream match the provided predicate. If any element does not match the predicate, the method returns false. This is a terminal operation and it short-circuits as soon as a non-matching element is found.

allMatch() Method Syntax

The syntax for the allMatch() method is as follows:

boolean allMatch(IntPredicate predicate)

Parameters:

  • predicate: An IntPredicate that represents the condition to be checked against the elements of the stream.

Returns:

  • true if all elements match the predicate; otherwise, false.

Throws:

  • This method does not throw any exceptions.

Understanding allMatch()

The allMatch() method allows you to check if every element in an IntStream satisfies a given condition. If the stream is empty, it returns true, as there are no elements to violate the predicate.

Examples

Basic Usage

To demonstrate the basic usage of allMatch(), we will create an IntStream and check if all elements are positive.

Example

import java.util.stream.IntStream;

public class AllMatchExample {
    public static void main(String[] args) {
        IntStream intStream = IntStream.of(1, 2, 3, 4, 5);

        // Check if all elements are positive
        boolean allPositive = intStream.allMatch(n -> n > 0);

        System.out.println("All elements are positive: " + allPositive);
    }
}

Output:

All elements are positive: true

Using allMatch() with Custom Predicate

This example shows how to use allMatch() with a custom predicate to check if all elements in an IntStream are even.

Example

import java.util.stream.IntStream;

public class CustomPredicateExample {
    public static void main(String[] args) {
        IntStream intStream = IntStream.of(2, 4, 6, 8, 10);

        // Check if all elements are even
        boolean allEven = intStream.allMatch(n -> n % 2 == 0);

        System.out.println("All elements are even: " + allEven);
    }
}

Output:

All elements are even: true

Real-World Use Case

Checking if All Scores are Passing

In real-world applications, the allMatch() method can be used to check if all scores in a stream are above a certain threshold, indicating that all students passed the exam.

Example

import java.util.stream.IntStream;

public class AllPassingScoresExample {
    public static void main(String[] args) {
        IntStream scores = IntStream.of(75, 85, 90, 88, 92);

        // Check if all scores are above the passing threshold of 70
        boolean allPassing = scores.allMatch(score -> score >= 70);

        System.out.println("All scores are passing: " + allPassing);
    }
}

Output:

All scores are passing: true

Conclusion

The IntStream.allMatch() method is used to check if all elements of the stream match a given predicate. This method is particularly useful for verifying that every element in a stream satisfies a specific condition. By understanding and using this method, you can efficiently perform validation checks on streams of integer values in your Java applications.

Comments