Hallo zusammen
Ich habe ein Problem mit einer Aufgabe die ich in der Uni bekommen habe.
Wir sollen ein Programm in Java schreiben mit einer Klasse Texttrenner welche einen Text anhand bestimmter Trennzeichen in Textteile trennt.
Ich habe mich natürlich auch an der Aufgabe versucht aber ich komm nicht weiter. Das Programm klappt zwar so wie es da steht aber die Trennzeichen sind ja jetzt gar nicht flexibel. D.h. wenn ich z.B. nur noch als Trenner das + hab klappt das alles nicht mehr.
Kann sein das ich mich blöd anstelle aber ich komm einfach nicht weiter vielleicht hat ja jemand einen Tipp oder Lösung für mich die mir weiterhilft.
Dazu muss ich noch sagen das wir noch nicht alles verwenden dürfen. Also zB Arrays nicht.
Schon mal vielen dank und freundliche Grüße
Ich habe ein Problem mit einer Aufgabe die ich in der Uni bekommen habe.
Wir sollen ein Programm in Java schreiben mit einer Klasse Texttrenner welche einen Text anhand bestimmter Trennzeichen in Textteile trennt.
Ich habe mich natürlich auch an der Aufgabe versucht aber ich komm nicht weiter. Das Programm klappt zwar so wie es da steht aber die Trennzeichen sind ja jetzt gar nicht flexibel. D.h. wenn ich z.B. nur noch als Trenner das + hab klappt das alles nicht mehr.
Kann sein das ich mich blöd anstelle aber ich komm einfach nicht weiter vielleicht hat ja jemand einen Tipp oder Lösung für mich die mir weiterhilft.
Dazu muss ich noch sagen das wir noch nicht alles verwenden dürfen. Also zB Arrays nicht.
Java:
public class TexttrennerTest {
public static void main(String[] args) {
Texttrenner a = new Texttrenner("--xx+-yy--abc-", "-+");
System.out.println(a.gibNaechstesWort());
}
}
Java:
public class Texttrenner {
private String zeichenkette;
private String trennzeichen;
private int pointer;
public Texttrenner(String kette, String trenner) {
zeichenkette = kette;
trennzeichen = trenner;
pointer = 0;
}
public String gibNaechstesWort() {
int start;
int ende;
String wort;
for (int i = 0; pointer < (zeichenkette.length() - 1)
&& zeichenkette.charAt(pointer) == trennzeichen.charAt(0)
| zeichenkette.charAt(pointer) == trennzeichen.charAt(1);
i++) {
pointer++;
}
start = pointer;
for (int i = 0; pointer < (zeichenkette.length() - 1)
&& zeichenkette.charAt(pointer) != trennzeichen.charAt(0)
&& zeichenkette.charAt(pointer) != trennzeichen.charAt(1);
i++) {
pointer++;
}
ende = pointer;
wort = zeichenkette.substring(start, ende);
if (start == ende) {
wort = null;
}
return wort;
}
Schon mal vielen dank und freundliche Grüße