Prüfen, ob Zeichen eine Zahl ist

  • Themenstarter Themenstarter Magnus
  • Beginndatum Beginndatum
M

Magnus

Gast
Hallo,

Java:
public class zeichenkette{

	public static void main(String[] args){
	
	int d=4;
	
	boolean a,b;
	
	
	a = Character.isDigit(d);
	b = Character.isDigit('4');
	
	System.out.println(a);	// false
	System.out.println(b);	// true
	
	}
}

Ich verstehe nicht, warum die erste Ausgabe immer false ist. Kann mir bitte jemand einen Tipp geben warum a mit false initialisiert wird.
Vielen Dank für eure Antworten.

Magnus
 
Zuletzt bearbeitet von einem Moderator:
Du prüfst mit isDigit() eigentlich chars, also Zeichen, keine Zahlenwerte.

Im ASCII-Zeichensatz ist an Position 4 keine Zahl.
Das kannst du prüfen mit:
Java:
System.out.println((char)4); //EOT
System.out.println((char)65); //A
System.out.println((char)52); //4

Für b testest du auf ein char, also ein Zeichen. Da geht das.

Siehe auch: American Standard Code for Information Interchange ? Wikipedia, oder API-Doc.
 
Zwar schon erledigt, aber da genüt ein Blick in die API:

isDigit(char ch)
Determines if the specified character is a digit.
isDigit(int codePoint)
Determines if the specified character (Unicode code point) is a digit.

Grüßle
 

Zurück
Oben