Зміст курсу
Основи Java
Основи Java
Таблиця символів та ASCII
Чому можна виконувати математичні операції над типом даних char?
Тип даних char
є досить цікавим. Він зберігає символи, але над ним також можна виконувати математичні операції.
Як думаєш, що буде результатом виконання даного коду?
Main
package com.example; public class Main { public static void main(String[] args) { char firstLetter = 'A'; char secondLetter = '('; char result = (char) (firstLetter + secondLetter); //we use type casting here to convert value from int to char System.out.println(result); } }
Зауважте
Тут ми використовуємо знак "+" для об'єднання значень двох різних змінних. Ми розглянемо основні операції у наступній главі, а поки що вам слід знати, що "+" об'єднує значення двох змінних.
Можна було б припустити, що результат буде "A(
", але, як бачимо, результат буде "i
". Чому так сталося? char
не є чисто символьним типом даних, він приймає символи з ASCII таблиці. Символ "A
" відповідає номеру 65 у таблиці, а символ "(
" відповідає номеру 40. Як ви вже здогадалися, символ "i
" відповідає номеру 105, оскільки 65 + 40 = 105.
Це важливо знати, оскільки це дозволяє нам професійно і гнучко оперувати з типом даних char
.
Ось посилання на таблицю: ASCII таблиця.
Зауважте
Приведенням типів у Java називається процес перетворення одного типу даних в інший. Це дозволяє нам обробляти змінну одного типу так, як якщо б вона була іншого типу. При приведенні
int
доchar
можна використовувати синтаксис(char)
. Це перетворення відоме як звужуюче примітивне перетворення, оскільки ми перетворюємо з більшого діапазону (32-бітне ціле число) у менший діапазон (16-бітовий символ Unicode).
Дякуємо за ваш відгук!