Values & References15 / 16
Up next

Optional over null

import java.util.Optional;

class Main {
    static Optional<Integer> firstEven(int[] nums) {
        for (int n : nums) {
            if (n % 2 == 0) {
                return Optional.of(n);
            }
        }
        return Optional.empty();
    }

    public static void main(String[] args) {
        // orElse supplies a fallback instead of risking a null
        System.out.println(firstEven(new int[]{1, 3, 6, 7}).orElse(-1));
        System.out.println(firstEven(new int[]{1, 3, 5}).orElse(-1));
    }
}
What you're solving

make absence explicit