Alternative zu .split()

pvd

Mitglied
Hallo zusammen,
ich bin relativ neu im Themengebiet der Informatik und verzweifle schon fast.
Mir wurde als Aufgabe gestellt, mit Hilfe der Hilfsmethode

private static String[] tokenize (String text)

die den Fließtext eines Dokuments als Parameter hat, in einzelne Wörter zu zerlegen und diese als String-Array zurückliefen soll.
An sich wäre dies nicht allzu kompliziert, aber als Voraussetzung ist gegeben, dass man .split() nicht verwenden darf. Es sind keinerlei String-Methoden erlaubt.

Was wäre eine Alternative zu .split() ???
Kann mir dabei jemand helfen?::bahnhof:
 

rme

Top Contributor
Hallo,

hattet ihr schon den Umgang mit Listen oder dürft ihr nur Arrays verwenden? Wenn ihr nur Arrays verwenden dürfte, würde ich erstmal die Leerzeichen zählen (denn das sind vermutlich die Wortgrenzen) und daraus die Anzahl der Wörter berechnen. Dann kannst du ein String-Array der entsprechenden Größe anlegen und in einem zweiten Durchgang immer bis zum nächsten Leerzeichen die Wörter durchgehen, um dann mit String.subString das Wort zu extrahieren und in's Array zu speichern.

Falls Listen verwendet werden dürfen, entfällt der erste Schritt - LinkedList anlegen und einfach die Wörter reinkopieren, am Ende mit einer der Hilfsmethoden in ein Array umwandeln :)
 

pvd

Mitglied
Ahhh ok, verstehe.... nein wir dürfen nur arrays verwenden...

aber wie kann ich die länge festlegen, wenn ich den Text noch nicht kenne? Diese Methode soll anscheinend allgemein geschrieben werden, um im Nachhinein den passenden Text durchlaufen zu lassen:/
 

rme

Top Contributor
Du bekommst den Text ja als Parameter "text" übergeben. Mit einer Schleife kannst du in einem ersten Schritt die Anzahl der Leerzeichen ermitteln. Die Länge des Texts ansich kannst du über die length()-Methode von text bekommen :)
 

Neue Themen


Oben