Mathematische Operationen mit Char
Warum sind mathematische Operationen mit dem char-Typ möglich?
Der char
-Datentyp ist recht interessant. Er speichert Zeichen, aber Sie können auch Operationen mit diesem Datentyp durchführen.
Was ist das Ergebnis der Ausführung dieses Codes?
Main.java
1234567891011package com.example; public class Main { public static void main(String[] args) { char firstLetter = 'A'; char secondLetter = '('; // We use type casting here to convert value from `int` to `char` char result = (char) (firstLetter + secondLetter); System.out.println(result); } }
Man könnte denken, dass das Ergebnis A(
wäre, aber wie wir sehen, ist das Ergebnis i
. Warum ist das so? char
ist kein reiner Zeichendatentyp; er entnimmt Zeichen aus der ASCII-Tabelle. Das Zeichen A
entspricht der Zahl 65 in der Tabelle, während das Zeichen (
der Zahl 40 entspricht. Wie Sie vielleicht vermuten, entspricht das Zeichen i
der 105, da 65 + 40 = 105.
Es ist wichtig, dies zu wissen, da es uns ermöglicht, mit dem char
-Datentyp ausgezeichnet und flexibel zu arbeiten.
Hier ist ein Link zur ASCII-Tabelle.
Typumwandlung
Im obigen Code ist Ihnen vielleicht diese ungewöhnliche Syntax aufgefallen:
char result = (char) (firstLetter + secondLetter);
Aber warum ist (char)
erforderlich? Die Additions-operation liefert ein Ergebnis vom Typ int
, da die numerischen Codes der Zeichen addiert werden. Um dieses Ergebnis in einer Variablen vom Typ char
zu speichern, ist eine explizite Umwandlung notwendig. Genau das bewirkt der (char)
-Ausdruck—er wandelt den numerischen Wert zurück in ein Zeichen.
In unserem Beispiel ergibt die Addition die Zahl 105. Der (char)
-Ausdruck wandelt diese Zahl in das Zeichen um, das dem Code 105 in der ASCII-Tabelle entspricht, was in diesem Fall das Zeichen i
ist.
Danke für Ihr Feedback!
Fragen Sie AI
Fragen Sie AI
Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen
Awesome!
Completion rate improved to 2.7
Mathematische Operationen mit Char
Swipe um das Menü anzuzeigen
Warum sind mathematische Operationen mit dem char-Typ möglich?
Der char
-Datentyp ist recht interessant. Er speichert Zeichen, aber Sie können auch Operationen mit diesem Datentyp durchführen.
Was ist das Ergebnis der Ausführung dieses Codes?
Main.java
1234567891011package com.example; public class Main { public static void main(String[] args) { char firstLetter = 'A'; char secondLetter = '('; // We use type casting here to convert value from `int` to `char` char result = (char) (firstLetter + secondLetter); System.out.println(result); } }
Man könnte denken, dass das Ergebnis A(
wäre, aber wie wir sehen, ist das Ergebnis i
. Warum ist das so? char
ist kein reiner Zeichendatentyp; er entnimmt Zeichen aus der ASCII-Tabelle. Das Zeichen A
entspricht der Zahl 65 in der Tabelle, während das Zeichen (
der Zahl 40 entspricht. Wie Sie vielleicht vermuten, entspricht das Zeichen i
der 105, da 65 + 40 = 105.
Es ist wichtig, dies zu wissen, da es uns ermöglicht, mit dem char
-Datentyp ausgezeichnet und flexibel zu arbeiten.
Hier ist ein Link zur ASCII-Tabelle.
Typumwandlung
Im obigen Code ist Ihnen vielleicht diese ungewöhnliche Syntax aufgefallen:
char result = (char) (firstLetter + secondLetter);
Aber warum ist (char)
erforderlich? Die Additions-operation liefert ein Ergebnis vom Typ int
, da die numerischen Codes der Zeichen addiert werden. Um dieses Ergebnis in einer Variablen vom Typ char
zu speichern, ist eine explizite Umwandlung notwendig. Genau das bewirkt der (char)
-Ausdruck—er wandelt den numerischen Wert zurück in ein Zeichen.
In unserem Beispiel ergibt die Addition die Zahl 105. Der (char)
-Ausdruck wandelt diese Zahl in das Zeichen um, das dem Code 105 in der ASCII-Tabelle entspricht, was in diesem Fall das Zeichen i
ist.
Danke für Ihr Feedback!