Wie frage ich ab, ob in einem Array, Werte doppelt vorkommen?

@mihe7 Ich setz da noch einen drauf mit short-circuiting: https://stackoverflow.com/a/35233967/4105457

Java:
public static boolean hasUniqueItems(int[] arr) {
    Objects.requireNonNull(arr);
    Set<Integer> seen = new HashSet<>();
    return IntStream.range(0, arr.length)
            .mapToObj(i -> arr[i])
            .allMatch(seen::add);
}

Clevere Idee mit der boolean-Rückgabe von add(...), einziger Nachteil wären die ganzen Wrapper-Objekte (außerhalb von -128 bis +127).
 

Neue Themen


Zurück
Oben