Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele Matemaattiset operaatiot char-muuttujilla | Perustyypit ja operaatiot
Java Perusteet

Matemaattiset operaatiot char-muuttujilla

Pyyhkäise näyttääksesi valikon

Miksi matemaattiset operaatiot ovat mahdollisia char-tyypille?

char-tietotyyppi on varsin mielenkiintoinen. Se tallentaa merkkejä, mutta tähän tietotyyppiin voi myös suorittaa operaatioita.

Main.java

Main.java

1234567891011
package 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); } }
Note
Huomio

Tässä käytetään +-merkkiä kahden eri muuttujan yhdistämiseen.

Voisi kuvitella, että tulos olisi A(, mutta kuten näemme, tulos onkin i. Miksi näin on? char ei ole pelkästään merkkityyppi, vaan se ottaa merkit ASCII-taulukosta. Merkki A vastaa numeroa 65 taulukossa, kun taas merkki ( vastaa numeroa 40. Kuten ehkä arvasit, merkki i vastaa numeroa 105, koska 65 + 40 = 105.

Tässä on linkki ASCII table.

Tyyppimuunnos

Yllä olevassa koodissa saatat huomata tämän epätavallisen syntaksin:

char result = (char) (firstLetter + secondLetter);

Mutta miksi tarvitaan (char)? Yhteenlasku operaatio palauttaa tuloksen tyypiltään int, koska se laskee merkkien numeeriset koodit yhteen. Jotta tämän tuloksen voi tallentaa char-tyyppiseen muuttujaan, tarvitaan eksplisiittinen muunnos. Juuri tämän tekee (char)-rakenne—se muuntaa numeerisen arvon takaisin merkiksi.

Esimerkissämme yhteenlaskun tulos on numero 105. (char)-rakenne muuntaa tämän numeron ASCII-taulukon koodia 105 vastaavaksi merkiksi, joka sattuu olemaan merkki i.

question mark

Miksi voimme suorittaa matemaattisia operaatioita char-tyypille?

Valitse oikea vastaus

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 2. Luku 4

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme

Matemaattiset operaatiot char-muuttujilla

Miksi matemaattiset operaatiot ovat mahdollisia char-tyypille?

char-tietotyyppi on varsin mielenkiintoinen. Se tallentaa merkkejä, mutta tähän tietotyyppiin voi myös suorittaa operaatioita.

Main.java

Main.java

1234567891011
package 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); } }
Note
Huomio

Tässä käytetään +-merkkiä kahden eri muuttujan yhdistämiseen.

Voisi kuvitella, että tulos olisi A(, mutta kuten näemme, tulos onkin i. Miksi näin on? char ei ole pelkästään merkkityyppi, vaan se ottaa merkit ASCII-taulukosta. Merkki A vastaa numeroa 65 taulukossa, kun taas merkki ( vastaa numeroa 40. Kuten ehkä arvasit, merkki i vastaa numeroa 105, koska 65 + 40 = 105.

Tässä on linkki ASCII table.

Tyyppimuunnos

Yllä olevassa koodissa saatat huomata tämän epätavallisen syntaksin:

char result = (char) (firstLetter + secondLetter);

Mutta miksi tarvitaan (char)? Yhteenlasku operaatio palauttaa tuloksen tyypiltään int, koska se laskee merkkien numeeriset koodit yhteen. Jotta tämän tuloksen voi tallentaa char-tyyppiseen muuttujaan, tarvitaan eksplisiittinen muunnos. Juuri tämän tekee (char)-rakenne—se muuntaa numeerisen arvon takaisin merkiksi.

Esimerkissämme yhteenlaskun tulos on numero 105. (char)-rakenne muuntaa tämän numeron ASCII-taulukon koodia 105 vastaavaksi merkiksi, joka sattuu olemaan merkki i.

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 2. Luku 4
some-alt