为了账号安全,请及时绑定邮箱和手机立即绑定

问题123

public class HelloWorld{    public static void main(String[] args) { final char LI = '男';        final char FEI = '女';        System.out.println(LI+FEI);        System.out.println(FEI); } } LI+FEI 出现提示52906?

正在回答

4 回答

个人觉得你应该将char类型转换成String类型,因为char类型的连接不能用+,在c中用的是strcat()函数进行连接的。(以上仅供参考)

0 回复 有任何疑惑可以回复我~
#1

LFWen 提问者

两位,刚才搜到的
2016-03-07 回复 有任何疑惑可以回复我~

char在java中占2个字节16位,用unicode编码表示,unicode可以转换成ascii编码,直接相加会把对应的ascii码相加

0 回复 有任何疑惑可以回复我~

两个char 相加的时候,对应的char变量会转换为对应的int数值进行计算

   

public static void main(String[] args) {

        final char SEY = '男';

        final char SEX = '女';

        System.out.println("SEX=" + SEX + ",SEY=" + SEY);

        System.out.println(SEX + SEY);

        System.out.println((int)SEX);

        System.out.println((int)SEY);

    }

   



SEX=女,SEY=男
52906
22899
30007


0 回复 有任何疑惑可以回复我~

要看你想输出什么,如果你想输出”男女“的话,System.out.println(LI+""+FEI),最后的那个数字可能和ASCII码表有关

0 回复 有任何疑惑可以回复我~
#1

qq_WL_4

为什么这样也可以,+""+是什么意思,楼上面的不是说char类型不能用+吗
2016-03-08 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Java入门第一季(IDEA工具)升级版
  • 参与学习       1165220    人
  • 解答问题       17581    个

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

进入课程
意见反馈 帮助中心 APP下载
官方微信