Java String trennen

Hexor Reynolds

Lt. Commander
Registriert
Apr. 2006
Beiträge
1.294
Hallo,

wie kann ich am besten einen String trennen?
Ich mache z.B. eine Eingabe

String string1 = JOptionPane.showInputDialog("Eingabe:");

die Eingabe: Auto soll dann als A-U-T-O ausgegeben werden.

Mir fällt absolut keine Methode ein wie ich das lösen kann.

Vielen Dank.
 
hier:

Code:
System.out.print(Character.toUpperCase(string.charAt(0)));
for(int i = 1; i < string.length(); i++) {
    System.out.print("-" + Character.toUpperCase(string.charAt(i)));
}

EDIT: copypaste fehler berichtigt
 
Zuletzt bearbeitet:
SymA schrieb:

ja, das hilft auf jeden Fall, weil in dem eingegebenem String auch immer ein Zeichen ist, anhand dessen sich der String splitten läßt...

da ich keine Ahnung von Java hab, kann ich das nur logisch ausführen:

- länge feststellen
Code:
n=length()
- dann n-mal in einer Schleife via z.B.substring immer ein Zeichen weiter behandeln
Code:
for ($i=0;$i < n;$i++){
	substring(i,i+);
}
- jedes einzelne Zeichen (evtl. mit gewünschter Nachbehandlung wie z.B. toUpperCase()) + "-" in eine Variable auffüllen
 
Zuletzt bearbeitet:
"String trennen" ist wohl ein unglücklich gewählter Titel, gemeint ist hier wohl eher "Zeichen in einen String einfügen". Das ganze kann man so wie vom rumbalotte beschrieben lösen, StringBuilder ist wohl hier die Klasse, die du suchst.
 
NemesisFS schrieb:

Davon abgesehen, dass du in der ersten Zeile sicherlich charAt(0) meintest, sollte es in der Schleife mit i = 1 losgehen.

rumbalotte schrieb:
ja, das hilft auf jeden Fall, weil in dem eingegebenem String auch immer ein Zeichen ist, anhand dessen sich der String splitten läßt...

Im Falle des TS wäre es eben das Zeichen "", String.split funktioniert hier schon. Aber dann kann man auch direkt auf die Zeichen gehen wie von Nemesis beschrieben.

Die Frage des TS ist doch sehr allgemein gehalten, aber mittels den hier genannten Methoden String.split, String.charAt und String.substring sollte er weit kommen.
 
carom schrieb:
Davon abgesehen, dass du in der ersten Zeile sicherlich charAt(0) meintest, sollte es in der Schleife mit i = 1 losgehen.

Da hast du natürlich recht!
 
Zurück
Oben