关于输出的问题

来源:2-11 Java常量的应用

乾坤龙心

2015-02-21 02:41

	final char nan='男';
    final char nv='女';
	System.out.println(nan+nv);
	final char nan='男';
    final char nv='女';
	System.out.println(nan+""+nv);

为什么上面那个输出的是52906的数字下面那段代码输出就正确了?

写回答 关注

1回答

  • 11111
    2015-02-21 08:48:22

    char类型进行+-运算的话,返回值是int类型的.


    已知 '男' 的unicode是30007,'女'的unicode是22899。

    加起来后就是52906了。


    nan(char) + ""(String) = String

    String+nv(char) = String

    所以经过第一个加号后,就变成了 "男" + nv。

    最后就是“男女”了。

Java入门第一季(IDEA工具)升级版

0基础萌新入门第一课,从Java环境搭建、工具使用、基础语法开始

1165172 学习 · 17581 问题

查看课程

相似问题