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

关于println

final char Man = '男';

final char Lady = '女';

System.out.println(Man+Lady);


运行之后输出为52906,但是如果在println的括号中添加一个“1”边城(“1”+Man+Lady);输出的就是    1男女   了,这是为啥?println的输出类型默认是啥?为啥之前Man+Lady 输出的是52906?


正在回答

1 回答

Java里char是两个字节存储的,char+char不是字符串拼接,类似于(int)Man + (int)Lady

但是 “1”+XXX就不一样了,“1”是个字符串,+字符串会调用继承自Object类的toString()方法,这里是Character.toString()方法,所以变成了字符串拼接。

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

Rule_mooc 提问者

谢谢啦~
2015-10-17 回复 有任何疑惑可以回复我~

举报

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

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

进入课程

关于println

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信