请问System.out.println('a'+1);与System.out.println(""+'a'+1);的区别是什么?

「已注销」 2006-09-21 09:33:16
执行结果来看,前一句是打印数字,后一句打印字符串.为什么啊?
...全文
358 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
ufo5054492 2006-09-22
  • 打赏
  • 举报
回复
lanseliuying讲的很有道理!
「已注销」 2006-09-22
  • 打赏
  • 举报
回复
运算时类型的自动转换问题
在一个表达式中,低类型向高类型自动转换
所以第一个是整型,第二个是字符串




这个我知道.我不明白的问题是两条语句中+为什么一个是算术运算符,一个是连接符
不过现在知道了,谢谢
cxncu001 2006-09-22
  • 打赏
  • 举报
回复
运算时类型的自动转换问题
在一个表达式中,低类型向高类型自动转换
所以第一个是整型,第二个是字符串
Onelee 2006-09-22
  • 打赏
  • 举报
回复
都说完了呢。。
UP下
royeleo 2006-09-22
  • 打赏
  • 举报
回复
二楼讲的很有道理啊
支持
「已注销」 2006-09-22
  • 打赏
  • 举报
回复
当println方法参数以字符串开头时,后面"+"为字符连接符,这才是问题的核心
sydicq 2006-09-21
  • 打赏
  • 举报
回复
不好意思!!

http://community.csdn.net/Expert/topic/5039/5039662.xml?temp=.6730615
「已注销」 2006-09-21
  • 打赏
  • 举报
回复
楼上的链接给错了
sydicq 2006-09-21
  • 打赏
  • 举报
回复
各位高手,去看看我的问题吧.同样的是符号+的问题.

http://community.csdn.net/Expert/topic/5039/5039559.xml?temp=9.283084E-02
bigelf 2006-09-21
  • 打赏
  • 举报
回复
因为单引号表示char(字符)型数据,char在内存中存储形式也是一个int
「已注销」 2006-09-21
  • 打赏
  • 举报
回复
为什么一个是算术运算符,一个是连接符呢
netstu 2006-09-21
  • 打赏
  • 举报
回复
二楼的讲的很对呀

在java中string需要用""括,''好象只能括char类型数据

所以前者会把a转化为int,与后者相加。
而后者先转换成字符了
lanseliuying 2006-09-21
  • 打赏
  • 举报
回复
第一个是表达式,执行的是字符‘a’的ASC码值加1,"+"是算术运算符;
第二个是一个空字符串连接字符再连接数字,注意这里"+"是字符串连接符。

62,614

社区成员

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

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