Methoden String in Wörter zerlegen und Endungen der Wörter überprüfen.

Orkanson

Mitglied
Hallo zusammen,
ich tüfftel gerade über ein Problem und finde irgendwie keine Lösung.
Wir sollen einen String einlesen und auf Endungen überprüfen.
Sprich manche Wörter enden auf en, ung, etc....
(z.B: Testen! Dies gehört beim Programmieren zu den wichtigen Aufgaben.)

Die Endung wird vorher festgelegt nach der im String gesucht werden soll. Dann soll der String durchsucht werden und ausgegeben werden wieviele der vorher festgelegten Endungen gefunden wurde.

Wir dürfen keine Arrays verwenden (das macht das ganze ja zu einfach 😵).

Danke für eure Hilfe!
 
Es hängt einfach daran, dass ich keinen Ansatz habe wie ich die Endungen des Strings rausbekomme.
An Code hab ich nichts, weil mir die Idee fehlt.
Ich möchte auch nicht das mir hier jemand den Code gibt. Es geht lediglich um die Idee 😉
Ich kann mit .contains den String überprüfen, dieser liefert mir aber nur true/false.
Mir fehlt einfach die passende Idee...
 
Fang doch erstmal damit an, den Satz in einzelne Wörter zu splitten.
Dazu gibt es die Methode String#split(String).
Wenn du das hast musst du mit einer Schleife über die gesplitteten Wörter iterieren.

Danach gibt es verschiedene Möglichkeiten um herauszubekommen, ob die letzten Buchstaben in einem Wort der gesuchten Endung entsprechen.
Eine Möglichkeit wäre mit String#lastIndexOf(String) zu arbeiten.
Du könntest auch per Hand Zeichen für Zeichen der beiden Strings vergleichen und wenn du ein Match hast weißt du dass die Endung gefunden wurde.
 
das einfachste wäre zu splitten und dann jeweils mit endsWith zu prüfen.
Falls dieser Weg nicht erlaubt ist (weil ihr keine Arrays nutzen dürft), kannst du auch einfach per indexOf immer von Leerzeichen zu Leerzeichen springen und per substring prüfen was die letzte Endung war.
Alternativ kann man das natürlich auch super per Regex lösen.
 

Zurück
Oben