Validation can produce a compact summary instead of stopping at the first failure.

Validation Summary

ValidationSummary.java
public class ValidationSummary {
    record Submission(String name, int score) {}
    record Summary(int accepted, int rejected) {}

    static Summary summarize(Submission[] submissions, int minimumScore) {
        int accepted = 0;
        int rejected = 0;

        for (Submission submission : submissions) {
            if (submission.score() >= minimumScore) {
                accepted++;
            } else {
                rejected++;
            }
        }

        return new Summary(accepted, rejected);
    }

    public static void main(String[] args) {
        int minimumScore = ;
        Submission[] submissions = {
            new Submission("alpha", 95),
            new Submission("beta", 68),
            new Submission("gamma", 82)
        };
        Summary summary = summarize(submissions, minimumScore);

        System.out.println("accepted=" + summary.accepted());
        System.out.println("rejected=" + summary.rejected());
    }
}
public class ValidationSummary {
    record Submission(String name, int score) {}
    record Summary(int accepted, int rejected) {}

    static Summary summarize(Submission[] submissions, int minimumScore) {
        int accepted = 0;
        int rejected = 0;

        for (Submission submission : submissions) {
            if (submission.score() >= minimumScore) {
                accepted++;
            } else {
                rejected++;
            }
        }

        return new Summary(accepted, rejected);
    }

    public static void main(String[] args) {
        int minimumScore = ;
        Submission[] submissions = {
            new Submission("alpha", 95),
            new Submission("beta", 68),
            new Submission("gamma", 82)
        };
        Summary summary = summarize(submissions, minimumScore);

        System.out.println("accepted=" + summary.accepted());
        System.out.println("rejected=" + summary.rejected());
    }
}
public class ValidationSummary {
    record Submission(String name, int score) {}
    record Summary(int accepted, int rejected) {}

    static Summary summarize(Submission[] submissions, int minimumScore) {
        int accepted = 0;
        int rejected = 0;

        for (Submission submission : submissions) {
            if (submission.score() >= minimumScore) {
                accepted++;
            } else {
                rejected++;
            }
        }

        return new Summary(accepted, rejected);
    }

    public static void main(String[] args) {
        int minimumScore = ;
        Submission[] submissions = {
            new Submission("alpha", 95),
            new Submission("beta", 68),
            new Submission("gamma", 82)
        };
        Summary summary = summarize(submissions, minimumScore);

        System.out.println("accepted=" + summary.accepted());
        System.out.println("rejected=" + summary.rejected());
    }
}
validation threshold The threshold decides which records count as accepted.
summary record A summary record returns both counts together without exposing mutable state.