Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Matematiske Operasjoner på Char | Grunnleggende Typer og Operasjoner
Practice
Projects
Quizzes & Challenges
Quizzes
Challenges
/
Java Grunnleggende

bookMatematiske Operasjoner på Char

Hvorfor er matematiske operasjoner mulig på char-typen?

Datatypen char er ganske interessant. Den lagrer tegn, men du kan også utføre operasjoner på denne datatypen.

Hva blir resultatet av å kjøre denne koden?

Main.java

Main.java

copy
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); } }

Man kunne kanskje trodd at resultatet ville være A(, men som vi ser, er resultatet i. Hvorfor det? char er ikke en ren tegn-datatype; den henter tegn fra ASCII-tabellen. Tegnet A tilsvarer tallet 65 i tabellen, mens tegnet ( tilsvarer tallet 40. Som du kanskje har gjettet, tilsvarer tegnet i 105, fordi 65 + 40 = 105. Det er viktig å vite dette fordi det gir oss mulighet til å operere utmerket og fleksibelt på char-datatypen.

Her er en lenke til ASCII-tabellen.

Typestøping

I koden over har du kanskje lagt merke til denne uvanlige syntaksen:

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

Men hvorfor er (char) nødvendig? Addisjonsoperasjonen returnerer et resultat av typen int fordi den summerer de numeriske kodene til tegnene. For å lagre dette resultatet i en variabel av typen char, er en eksplisitt konvertering nødvendig. Det er nettopp dette (char)-uttrykket gjør—det konverterer den numeriske verdien tilbake til et tegn.

I vårt eksempel er resultatet av addisjonen tallet 105. (char)-uttrykket konverterer dette tallet til tegnet som tilsvarer kode 105 i ASCII-tabellen, som tilfeldigvis er tegnet i.

question mark

Hvorfor kan vi utføre matematiske operasjoner på char?

Select the correct answer

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 2. Kapittel 4

Spør AI

expand

Spør AI

ChatGPT

Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår

bookMatematiske Operasjoner på Char

Sveip for å vise menyen

Hvorfor er matematiske operasjoner mulig på char-typen?

Datatypen char er ganske interessant. Den lagrer tegn, men du kan også utføre operasjoner på denne datatypen.

Hva blir resultatet av å kjøre denne koden?

Main.java

Main.java

copy
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); } }

Man kunne kanskje trodd at resultatet ville være A(, men som vi ser, er resultatet i. Hvorfor det? char er ikke en ren tegn-datatype; den henter tegn fra ASCII-tabellen. Tegnet A tilsvarer tallet 65 i tabellen, mens tegnet ( tilsvarer tallet 40. Som du kanskje har gjettet, tilsvarer tegnet i 105, fordi 65 + 40 = 105. Det er viktig å vite dette fordi det gir oss mulighet til å operere utmerket og fleksibelt på char-datatypen.

Her er en lenke til ASCII-tabellen.

Typestøping

I koden over har du kanskje lagt merke til denne uvanlige syntaksen:

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

Men hvorfor er (char) nødvendig? Addisjonsoperasjonen returnerer et resultat av typen int fordi den summerer de numeriske kodene til tegnene. For å lagre dette resultatet i en variabel av typen char, er en eksplisitt konvertering nødvendig. Det er nettopp dette (char)-uttrykket gjør—det konverterer den numeriske verdien tilbake til et tegn.

I vårt eksempel er resultatet av addisjonen tallet 105. (char)-uttrykket konverterer dette tallet til tegnet som tilsvarer kode 105 i ASCII-tabellen, som tilfeldigvis er tegnet i.

question mark

Hvorfor kan vi utføre matematiske operasjoner på char?

Select the correct answer

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 2. Kapittel 4
some-alt