Matemaattiset Operaatiot Char-tyypillä
Miksi matemaattiset operaatiot ovat mahdollisia char-tyypille?
char-tietotyyppi on varsin mielenkiintoinen. Se tallentaa merkkejä, mutta tämän tietotyypin kanssa voi myös suorittaa operaatioita.
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); } }
Voisi kuvitella, että tulos olisi A(, mutta kuten näemme, tulos onkin i. Miksi näin? char ei ole pelkästään merkkitietotyyppi; se ottaa merkit ASCII-taulukosta. Merkki A vastaa taulukossa numeroa 65, kun taas merkki ( vastaa numeroa 40. Kuten ehkä arvasit, merkki i vastaa numeroa 105, koska 65 + 40 = 105.
Tässä on linkki ASCII-taulukkoon.
Tyyppimuunnos
Yllä olevassa koodissa saatat huomata tämän epätavallisen syntaksin:
char result = (char) (firstLetter + secondLetter);
Mutta miksi (char) on tarpeellinen? Yhteenlasku operaatio palauttaa tuloksen, jonka tyyppi on int, koska se laskee merkkien numeeriset koodit yhteen. Jotta tämän tuloksen voi tallentaa muuttujaan, jonka tyyppi on char, tarvitaan eksplisiittinen muunnos. Juuri tämän (char)-rakenne tekee—se muuntaa numeerisen arvon takaisin merkiksi.
Esimerkissämme yhteenlaskun tulos on numero 105. (char)-rakenne muuntaa tämän numeron merkiksi, jonka koodi on 105 ASCII-taulukossa, ja tämä merkki on i.
Kiitos palautteestasi!
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme
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?
Mahtavaa!
Completion arvosana parantunut arvoon 2.7
Matemaattiset Operaatiot Char-tyypillä
Pyyhkäise näyttääksesi valikon
Miksi matemaattiset operaatiot ovat mahdollisia char-tyypille?
char-tietotyyppi on varsin mielenkiintoinen. Se tallentaa merkkejä, mutta tämän tietotyypin kanssa voi myös suorittaa operaatioita.
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); } }
Voisi kuvitella, että tulos olisi A(, mutta kuten näemme, tulos onkin i. Miksi näin? char ei ole pelkästään merkkitietotyyppi; se ottaa merkit ASCII-taulukosta. Merkki A vastaa taulukossa numeroa 65, kun taas merkki ( vastaa numeroa 40. Kuten ehkä arvasit, merkki i vastaa numeroa 105, koska 65 + 40 = 105.
Tässä on linkki ASCII-taulukkoon.
Tyyppimuunnos
Yllä olevassa koodissa saatat huomata tämän epätavallisen syntaksin:
char result = (char) (firstLetter + secondLetter);
Mutta miksi (char) on tarpeellinen? Yhteenlasku operaatio palauttaa tuloksen, jonka tyyppi on int, koska se laskee merkkien numeeriset koodit yhteen. Jotta tämän tuloksen voi tallentaa muuttujaan, jonka tyyppi on char, tarvitaan eksplisiittinen muunnos. Juuri tämän (char)-rakenne tekee—se muuntaa numeerisen arvon takaisin merkiksi.
Esimerkissämme yhteenlaskun tulos on numero 105. (char)-rakenne muuntaa tämän numeron merkiksi, jonka koodi on 105 ASCII-taulukossa, ja tämä merkki on i.
Kiitos palautteestasi!