我读到“当将整数转换为 char 时,仅使用其低 16 位数据;另一部分被忽略”。基于此,我不应该得到 '0041' 的 char 值作为输出。相反,我得到 'A' 作为输出,其 ASCII 值为 65。为什么会发生这种情况?
public class practice {
public static void main(String[] args) {
char ch = (char)0XAB0041;
System.out.println(ch);
char ch1= (char)65.25;
System.out.println(ch1);
}
}
如果我自己只考虑低 16 位进行转换,我会得到相同的输出吗?如下:
char ch = (char)0041;
System.out.println(ch);
伙计们,任何人都可以解决我在理解 unicode、ASCII 和十六进制值之间的关系时面临的这个问题......谢谢..