栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java的int类型强制转为char类型变乱码

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java的int类型强制转为char类型变乱码

看下面这一段代码,很多人(包括我)会认为ch的值应该是’1’,输出应该为1,我们编译一下看看。

int num = 1;
char ch = (char) num;
System.out.println(ch);

在UTF-8编码方式下输出为乱码(其实这是一个字符,只是显示不出来),并不是我们认为的1。

这是因为在java中char是一个16位的Unicode字符,我们把其他类型转换为char类型是直接转成相对应的Unicode编码表中的字符。
如果我们要将其他类型转成char类型,应该使用Character类的forDigit方法:
public static char forDigit​(int digit, int radix),该方法会返回一个按基数radix表示的数字digit所对应的字符。基数即我们说的进制。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/490733.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号