В Java, тип данных char можно рассматривать как целочисленный тип данных, т.е. с char можно выполнять арифметические операции. `char c1 = 'a'; System.out.println("char в виде String:: = " + c1); На консоль -> char в виде String:: = a
`// Автоматическое, восходящее преобразование char в int int i1 = c1; System.out.println("int получили из char:: = " + i1); На консоль -> int получили из char:: = 97
`//Инкрементирую "i1"(это тип int) и преобразуем "i1" обратно в char char c2 = (char) (++i1); System.out.println("char получили из int:: = " + c2); На консоль -> char получили из int:: = b
`//Инкрементирую "c2"(это тип char) c2; System.out.println("Инкрементирую(c2) тип char, результат = " + c2); На консоль -> Инкрементирую(++c2) тип char, результат = c
`/*
- Тут со скобками
- То, что в скобках - приоритет выше
- При выполнении "(c1 + c2)" сначала "с1" преобразуется в int и получаем с = 97
- Затем "с2" преобразуется в int и получаем с2 = 99
- Затем складываем 97 и 99 = 196
- Затем 196 преобразуем в String */ System.out.println("String + (char + char):: = " + (c1 + c2)); На консоль ->String + (char + char):: = 196
`/*
- Здесь без скобок
- Сначала "с" преобразуется в String
- Затем "с2" преобразуется в String
- Затем происходит конкатенация строк "с" и "с2" */ System.out.println("String + char + char:: = " + c1 + c2); На консоль ->String + char + char:: = ac
`/*
- Сначала 'a' преобразуется в int
- Затем к 'a' прибавляем 10
- результат преобразуется в char и помещается в 'c3' */ char c3 = 'a' + 10; System.out.println("char + int, результат в char:: = " + c3); На консоль ->char + int, результат в char:: = k
`int i2 = 'a' + 10; System.out.println("char + int, результат в int:: = " + i2); На консоль ->char + int, результат в int:: = 107
`char c4 = 'a' + 'b'; System.out.println("'a' + 'b', результат в char:: = " + c4); На консоль ->'a' + 'b', результат в char:: = Ã
`int i3 = 'a' + 'b'; System.out.println("'a' + 'b', результат в int:: = " + i3); На консоль -> 'a' + 'b', результат в int:: = 195``````````