(Java) Buchstaben in den ASCII-Code umwandeln?

2 Antworten

Hast du schon mal in die ASCII-Tabelle geschaut?

http://www.torsten-horn.de/techdocs/ascii.htm

Das kleine a liegt dort bei der Dezimalzahl 97 und das große A bei 65. Die Differenz beträgt 32.

Die nächste Information, die du benötigst, ist die, dass Java ganze Zahlen implizit in den Typ Character umwandeln kann und andersrum:

char a = 97; // 'a'
int b = 'a'; // 97

So kannst du dir einen Großbuchstaben einfach errechnen:

char grossbuchstabe = 'a' - 32; // 'A'

"Zahlen und Zeichen" sind in deinem Falle das gleiche. Es kommt ja nur darauf an, wie du sie behandelst.

Ich bin mir nicht sicher, ob du jetzt nur von ASCII redest, aber vielleicht meinst du so etwas:

final char c1 = 'a';
final int i1 = c1;
System.out.printf("%c: 0x%02X\n", c1, i1);

final char c2 = (char)(c1 ^ 0x20);
final int i2 = c2;
System.out.printf("%c: 0x%02X\n", c2, i2);

Ansonsten guck dir die Methoden toUpperCase() und toLowerCase() der Stringklasse an! Das ist vielleicht eher das, was du suchst. :)