Mathematische Operationen mit Char
Warum sind mathematische Operationen auf dem Typ char möglich?
Der Datentyp char ist recht interessant. Er speichert Zeichen, aber Sie können auch Operationen auf diesem Datentyp durchführen.
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, das Ergebnis wäre A(, aber wie wir sehen, ist das Ergebnis i. Warum ist das so? char ist kein reiner Zeichendatentyp; er übernimmt 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 Zahl 105, da 65 + 40 = 105.
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 die (char)-Konstruktion—sie wandelt den numerischen Wert zurück in ein Zeichen.
In unserem Beispiel ergibt die Addition die Zahl 105. Die (char)-Konstruktion 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
Can you explain more about how type casting works in Java?
What other operations can be performed on the char type?
Can you show more examples of using char with mathematical operations?
Großartig!
Completion Rate verbessert auf 2.7
Mathematische Operationen mit Char
Swipe um das Menü anzuzeigen
Warum sind mathematische Operationen auf dem Typ char möglich?
Der Datentyp char ist recht interessant. Er speichert Zeichen, aber Sie können auch Operationen auf diesem Datentyp durchführen.
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, das Ergebnis wäre A(, aber wie wir sehen, ist das Ergebnis i. Warum ist das so? char ist kein reiner Zeichendatentyp; er übernimmt 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 Zahl 105, da 65 + 40 = 105.
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 die (char)-Konstruktion—sie wandelt den numerischen Wert zurück in ein Zeichen.
In unserem Beispiel ergibt die Addition die Zahl 105. Die (char)-Konstruktion 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!