为什么int赋值给char必须要显示转换?
来源:3-21 编程练习
i3kp0d
2020-08-03 13:42:58
int n = 98; char ch = n;
上面第二行在编译的过程中报错 只有进行显示转换才可以正常通过编译
char ch = (char)n;
我想知道为什么不能隐式转换?是因为int是4字节长度而char只有2字节所以才必须要这么转换吗?
1回答
同学你好,int用来定义整型变量,char用来定义字符型变量。将整型强制类型转换为字符型,JVM 会把数字当成字符的 ASCII 编码来处理。
int类型转char类型属于强制类型转换,而char转int属于自动类型转换(隐式类型转换)。如下所示:
如果我的回答解决了你的疑惑,请采纳,祝学习愉快~
相似问题