Java String vergleichen mit Array /Liste?

4 Antworten

Aus einem Kommentar von dir geht hervor, dass du überprüfen willst, ob der String und das Array die gleichen Elemente haben.

Wenn die Reihenfolge auch identisch sein soll, kannst du den String (also den Satz) spliten, so dass du ein Array mit Teilstrings (den einzelnen Worten) erhältst.

Z.B. gilt

String str = "Hi ciao*tschüss"
String[] arr = str.split(" *")

Ausgabe:
arr = ["Hi", "ciao", "tschüss"]

Der Methode split kannst du einen String übergeben, der festlegt bei welchen Zeichen eine Trennung vorgenommen werden soll. Hier im Beispiel also bei * und Leerzeichen.

Dann kannst du mit Java.util.Arrays.equals() vergleichen, ob die beiden Arrays gleich sind.

Wenn die Reihenfolge keine Rolle spielt, kannst du zunächst die Länge beider Arrays vergleichen. Falls die ungleich ist, sind sie natürlich nicht gleich.

Falls die Länge gleich ist, über eines der Arrays iterieren und vergleichen, ob jedes Element auch im anderen Array vorkommt.

ArrayListen haben eine contains Methode, die genau das macht.

https://www.geeksforgeeks.org/arraylist-contains-java/

Wenn du prüfen willst ob in einem String des Arrays, der andere String enthalten ist/vorkommt, musst du es Iterieren (For Each...).

Edit: wenn du die einzelnen wörter des satzes als Array mit dem Anderen Array abgleichen willst, kannst du das mit Array.equals(String.split(" ")).

LG

Woher ich das weiß:Studium / Ausbildung – Gelernter Fachinformatiker, Freiberufl. Softwareentwickler
Einhorn1237282 
Fragesteller
 01.02.2020, 12:25

Danke dir erstmal,

ich möchte jedoch einen String auf ein komplettes Array überprüfen, nicht nur auf einzelne Elemente des Arrays

mfg

0

Einfach ne for Schleife für jeden String aus dem Array die bei 0 anfängt

Geht mir equals. Foreach schleife wäre etwas