Java语言Char型变量能存储一个中文汉字吗

2023-05-10 11:30 582浏览 1回答

char类型可以存储一个中文汉字。因为Java中使用的编码是Unicode(不选择任何特定的编码,直接使用字符在字符集中的编号,这是统一的唯一方法),一个char类型占2个字节(16比特),所以放一个中文是没问题的。


转载请联系作者获得授权,并标注“文章作者”。

后发表回答
读财会的小哥哥
1楼 · 2023-05-10 11:30.采纳回答

char类型可以存储一个中文汉字。因为Java中使用的编码是Unicode(不选择任何特定的编码,直接使用字符在字符集中的编号,这是统一的唯一方法),一个char类型占2个字节(16比特),所以放一个中文是没问题的。

使用Unicode意味着字符在JVM内部和外部有不同的表现形式,在JVM内部都是Unicode,当这个字符被从JVM内部转移到外部时(例如存入文件系统中),需要进行编码转换。

所以Java中有字节流和字符流,以及在字符流和字节流之间进行转换的转换流,如InputStreamReader和OutputStreamReader,这两个类是字节流和字符流之间的适配器类,承担了编码转换的任务;对于C程序员来说,要完成这样的编码转换恐怕要依赖于union(联合体/共用体)共享内存的特征来实现了。


环球网校快问 · 最新文章 · 最新问题
Copy 2018 https://wenda.hqwx.com/ All Rright Reserved. 京ICP备16038139号-3 / Smrz 京ICP备16038139号-3/ 举报电话:400-678-3456 /