Java: Zeichenkette in char[] auf einzelne Zahlen/Buchstaben überprüfen?
Hallo, ich bin Anfänger in Java und will, dass der Benutzer mit dem Scanner einen String bestimmen kann, welcher dann in einer Char-Zeichenkette (also in einem Array) gespeichert wird: habe bisher das:
import java.util.Scanner;
public class Zeichenkette_Abfragen {
public static void main(String args[]) {
Scanner s = new Scanner(System.in);
String ersteEingabe = s.next(); //String wird bestimmt.
char[] zeichenkette = ersteEingabe.toCharArray(); //String wird in einen char-Array umgewandelt.
for (int i=0; i<zeichenkette.length; i++) { //For-Schleife
System.out.println(zeichenkette[i]);
if (zeichenkette[i].equals("s")){ //Prüft einzelnes Zeichen, ob es einem bestimmten Wert entspricht.
// macht irgendwas
}
else {
// macht irgendwas
}
}
}
}
Also ich kann einzelne Zeichen auslesen(das klappt immerhin C:), ABER ich kann sie nicht überprüfen, ob sie z.B. einem "b" oder "s" entsprechen. Das muss doch irgendwie gehen ?
3 Antworten
Um einen String zu einem CharArray zu machen, nimmst du folgenden Befehl:
char[] zeichnekette = deinString.toCharArray();
Wenn du einfach nur überprüfen willst, ob ein String ein bestimmtes Zeichen enthält, diesen hier (liefert einen boolean zurück):
deinString.contains(irgendeinString);
Wobei irgendeinString dein Char (nur als String) ist: z.B.: "a" oder "/"
Versuch mal, "s" in ein char zu konvertieren (ist sonst ein string und daher ungleich).
Bei primitiven Datentypen wie: int, double, char, byte, long, etc....
gibt es keine Methoden, die du aufrufen könntest.
Entsprechend kannst du hier nur mit dem == Operator vergleichen:
if (zeichenkette[i] == 's') {
PS: Einen Char Wert weist man mit einfachem Hochkomma aus, einen String mit Anführungszeichen:
char a = 'a'; String b = "b";
Wie kann man ein Hochkomma tippen? Finde es nicht auf der Tastatur...., danke schonmal :D