Hallo,
wir lernen gerade Java in der Schule und beschäftigen uns gerade mit der Stringverarbeitung.
Wir sollen einen String in dieser Art analysieren
#_!!!_++_**** // Dieser Code entspricht dem Empfänger: Etage 3, Flur 2, Zimmer 4
# -> Beginn der Nachricht
_ -> trennt die Teilbereiche der Nachricht
! -> Anzahl der Etagen
+ -> Anzahl Flur
* -> Anzahl Zimmer
Die Strings können verschieden sein, es ist auch möglich, dass ein String falsch ist. Aber es dürfen maximal 5mal !, 4mal + und 10mal * vorkommen.
Jetzt sollen wir eine Methode schreiben, die den String untersucht und ein boolean zurückgibt, ob der String korrekt oder nicht korrekt ist.
Folgende Methoden der Klasse String dürfen wir dazu nutzen:
s.length()
s.indexOf(t)
s.indexOf(t, anfang)
s.lastIndexOf(t)
s.charAt(stelle)
s.substring(anfang, ende)
s.substring(anfang)
s.toLowerCase()
s.toUpperCase()
s.trim()
s.equals(t)
s.replace(t, z)
Der Anfang ist auch noch recht einfach
Jetzt müsste auf ! prüfen, ich weiß auch, dass ein ! am Platzt des 2ten Stringindex sein muss, damit die Eingabe stimmt, aber ob jetzt 1 oder 5 ! folgen, dies weiß ich ja nicht. Also wie kann ich auf das nächste _ prüfen, wenn ich nicht weiß an welcher Stelle es vorkommt? Habt ihr da vielleicht einen kleinen Denkanstoß für mich?
Vielen vielen lieben Dank
Deggit
wir lernen gerade Java in der Schule und beschäftigen uns gerade mit der Stringverarbeitung.
Wir sollen einen String in dieser Art analysieren
#_!!!_++_**** // Dieser Code entspricht dem Empfänger: Etage 3, Flur 2, Zimmer 4
# -> Beginn der Nachricht
_ -> trennt die Teilbereiche der Nachricht
! -> Anzahl der Etagen
+ -> Anzahl Flur
* -> Anzahl Zimmer
Die Strings können verschieden sein, es ist auch möglich, dass ein String falsch ist. Aber es dürfen maximal 5mal !, 4mal + und 10mal * vorkommen.
Jetzt sollen wir eine Methode schreiben, die den String untersucht und ein boolean zurückgibt, ob der String korrekt oder nicht korrekt ist.
Folgende Methoden der Klasse String dürfen wir dazu nutzen:
s.length()
s.indexOf(t)
s.indexOf(t, anfang)
s.lastIndexOf(t)
s.charAt(stelle)
s.substring(anfang, ende)
s.substring(anfang)
s.toLowerCase()
s.toUpperCase()
s.trim()
s.equals(t)
s.replace(t, z)
Der Anfang ist auch noch recht einfach
Code:
public boolean GueltigkeitsPruefung(String Wert)
{
if (Wert.charAt(0) == '#')
{
if (Wert.charAt(1) == '_')
{
if
}
}
}
Jetzt müsste auf ! prüfen, ich weiß auch, dass ein ! am Platzt des 2ten Stringindex sein muss, damit die Eingabe stimmt, aber ob jetzt 1 oder 5 ! folgen, dies weiß ich ja nicht. Also wie kann ich auf das nächste _ prüfen, wenn ich nicht weiß an welcher Stelle es vorkommt? Habt ihr da vielleicht einen kleinen Denkanstoß für mich?
Vielen vielen lieben Dank
Deggit