public class test { public static void main(String[] args) { char c = 'Q'; int j = c; System.out.println(j + " " + c); } }
Вышеприведенный код выводит 81 Q, но я подумал, что Q - это 51 в Unicode? что происходит?!
51 является шестнадцатеричным для 81 (5 * 16 + 1 = 81).Q - 81 в десятичном виде, 0x51 в шестнадцатеричном, U + 0051 в Unicode, которые являются одним и тем же.
См., Например, запись для Q на этой странице .
'Q' - это 81 десятичное значение, 51 шестнадцатеричное значение. Применяется к ASCII, ISO 8859-1 (лат. 1) и к UTF-8.