java char 存储中文

量化分析 2014-11-26 10:53:10
public class ChineseTest {
public static void main(String[] args) {
// 将一个中文汉字赋值给一个char变量
char a = '中';
char b = '文';
char c = '测';
char d = '试';
char e = '成';
char f = '功';
System.out.print(a);
System.out.print(b);
System.out.print(c);
System.out.print(d);
System.out.print(e);
System.out.print(f);
}
}

编译没有报错,运行结果:
中文测试成功

上面引用的是某博客的 http://gaolixu.iteye.com/blog/413284 的内容。
开始觉得是对的。不过从c++过来的 char占一个字节,而java的char占2个字节。想想也是对的。 不过自己用IDE的时候直接不能编译,说不能够把string转为char。。。。。

求大侠解答
...全文
173 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
量化分析 2014-11-26
  • 打赏
  • 举报
回复
引用 2 楼 a470577391 的回复:
用了双引号吧
嗯,你真厉害~~ 正解
白开水MD5 2014-11-26
  • 打赏
  • 举报
回复
用了双引号吧
量化分析 2014-11-26
  • 打赏
  • 举报
回复
我的IDE是android studio
静山晚风 2014-11-26
  • 打赏
  • 举报
回复
双引号不是字符串了吗
资源下载链接为: https://pan.quark.cn/s/67c535f75d4c char型变量能否存储中文汉字,取决于编程语言中char类型的具体实现和所采用的字符编码标准。Unicode是一种国际通用的字符编码标准,旨在为世界上几乎所有的文字提供唯一的数字表示,使计算机能够处理多种语言的文本。Unicode编码字符集包含了大量的汉字,因此,在支持Unicode编码且char类型与UTF-16编码对应的编程语言(如Java、C#)中,char型变量通常可以直接存储大部分中文汉字。 Unicode编码有多种实现方式,其中UTF-16编码使用2个或4个字节表示一个字符。大部分常用的汉字位于Unicode的基本多语言平面(BMP)内,只需2个字节即可表示,因此可以直接存储char型变量中。然而,对于一些超出基本多语言平面的特殊汉字或字符(如某些罕见的古汉字或表情符号),则需要4个字节表示,无法直接存储char型变量中。 需要注意的是,并非所有编程语言的char类型都与UTF-16编码对应。例如,在C++中,char类型通常对应于ASCII编码,只能存储7位ASCII字符,无法直接存储中文汉字。此时,若要处理中文汉字,通常需要使用宽字符类型(如wchar_t)或其他字符串处理库。 此外,即使char型变量能够存储汉字,在实际编程中也需要注意字符编码的一致性,确保字符串操作、输入输出等过程正确处理字符编码,避免出现乱码或错误。 综上所述,char型变量能否存储中文汉字,主要取决于编程语言中char类型的实现方式和所采用的字符编码标准。在支持Unicode且char类型与UTF-16对应的语言环境中,大部分汉字可以直接存储,但特殊汉字或超出基本多语言平面的字符可能需要特殊处理;而在不支持Unicode或char类型仅对应ASCII的环境中,存储汉字通常需要额外的处理。

62,630

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧