Математичні Операції Над Char
Свайпніть щоб показати меню
Чому можливі математичні операції над типом char?
Тип даних char є досить цікавим. Він зберігає символи, але над цим типом також можна виконувати математичні операції.
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); } }
Можна було б подумати, що результатом буде A(, але, як бачимо, результат — i. Чому так? char — це не лише символьний тип даних; він бере символи з таблиці ASCII. Символ A відповідає числу 65 у таблиці, а символ ( — числу 40. Як ви вже здогадалися, символ i відповідає 105, оскільки 65 + 40 = 105.
Ось посилання на таблицю ASCII.
Приведення типів
У коді вище ви могли помітити цей незвичний синтаксис:
char result = (char) (firstLetter + secondLetter);
Але чому потрібен (char)? Операція додавання повертає результат типу int, оскільки підсумовує числові коди символів. Щоб зберегти цей результат у змінній типу char, необхідне явне перетворення. Саме це і робить конструкція (char) — вона перетворює числове значення назад у символ.
У нашому прикладі результат додавання — число 105. Конструкція (char) перетворює це число на символ, що відповідає коду 105 у таблиці ASCII, а це символ i.
Дякуємо за ваш відгук!
Запитати АІ
Запитати АІ
Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат