Wie finde ich heraus, ob ein mehrdimensionales Array einen String enthält (Java)?

... komplette Frage anzeigen

1 Antwort

Wenn du wissen willst, was für Typen das Array überhaupt enthält, verwendest du Java.lang.Class.getComponentType().

String[] arr = new String[] { "a string" };
Class type = arr.getClass().getComponentType();
System.out.println("Array consists of: " + type.getName());

Wenn du einen bestimmten Wert in einem mehrdimensionalen Array finden willst, empfiehlt sich eine funktionale Lösung mit Hilfe des Stream API.

String[][] arr = { {"1", "2", "3"}, {"3", "1", "2"}, {"2", "2", "3"} };

List list = Arrays.stream(arr).flatMap(x -> Arrays.stream(x)).filter(x -> x.equals("2")).collect(Collectors.toList());

Das gibt dir eine List mit allen Ergebnissen, die auf den Filter zutreffen (in diesem Fall jeder String "2").

Antwort bewerten Vielen Dank für Deine Bewertung