1、将数值 “22545” 转换成 char 类型,然后运行, 控制台得到的结果是 中文“堑”.
char b = (char)22545;
System.out.println(b);
2、将中文 “一” 转换成 int 类型,然后运行, 控制台得到的结果是 19968.
int b = '一';
System.out.println(b);
扩展资料:
1、字面值赋值
在使用字面值对整数赋值的过程中,可以将int literal赋值给byte short char int,只要不超出范围。这个过程中的类型转换时自动完成的,但是如果你试图将long literal赋给byte,即使没有超出范围,也必须进行强制类型转换。例如 byte b = 10L;是错的,要进行强制转换。
2、表达式中的自动类型提升
除了赋值以外,表达式计算过程中也可能发生一些类型转换。在表达式中,类型提升规则如下:
所有byte/short/char都被提升为int。
如果有一个操作数为long,整个表达式提升为long。float和double情况也一样。