Символ '\u6543'
имеет числовое значение 0x6543
(т.е. 6543 в шестнадцатеричной основе).
Поэтому, чтобы присвоить числовое значение символу, вы должны написать:
char a = 0x6543;
Если вам необходимо преобразовать int
значение 6543
в соответствующее char
, имеющее значение 0x6543
, вы можете преобразовать в String
и затем проанализировать String
как шестнадцатеричное число:
int a = 6543;
char b = (char)Integer.parseInt(Integer.toString(a),16);
Вы увидите, что:
System.out.println (b=='\u6543');
отпечатков true
.
Конечно, вы можете выполнять это преобразование только для значений Unicode, которые не содержат цифр от a
до f
, поскольку вы не можете, например, сохранить значение 00a7
в int
переменная (если вы не добавите префикс 0x
, но тогда вам не нужно преобразование).