问题描述
- 请问这个程序为什么输出的结果是一个问号
-
class CharTest
{public static void main(String[] args)
{ char c = (char)70000;
System.out.println(c);
}
}
请问这个程序为什么输出的结果是一个问号?
解决方案
char型(文本型)用于存放字符的数据类型,占用2个字节,采用unicode编码,它的前128字节编码与ASCII兼容字符的存储范围在u0000~uFFFF
解决方案二:
nt为4个字节,char为2个字节,强行转换可能会丢失2个高位字节的数据,要注意。
解决方案三:
那请问一下,为什么输出的结果是问号呢,问号有什么含义呢
解决方案四:
强行转换的原因 没有解析出这个字符
解决方案五:
被强行转换了,你用String就可以输出你要输出的数字了
解决方案六:
问号是乱码!可以用String.valueOf(c)!
解决方案七:
7000是个什么字符啊,找不到字符就乱码了呗
解决方案八:
被强行转换了,问号代表着乱码
解决方案九:
将70000写成二进制,截取高位,保留十六位,赋给c
时间: 2024-10-28 01:51:22