黑马程序员技术交流社区

标题: java中+号的用法 [打印本页]

作者: 沙子    时间: 2014-12-12 21:30
标题: java中+号的用法
语句System.out.println(1+2+"java"+3+4)输出的结果是:!!!!!!!
A: 3java34
B: 12java34
C: 3java7
D: 12java7

A是正确答案,为什么不是C???
作者: wangzheng406    时间: 2014-12-12 21:54
string+int = string
作者: zmhlnrs    时间: 2014-12-12 21:55
1+2是int类型所以会加起来而后面的+号是连接符后面"java"是字符串所以会直接连接
而''java"后面的会按照字符串的形式连接
作者: 侯鹏成    时间: 2014-12-12 21:57
肯定是A了,运算遇到字符串后就停止了,所以字符串之前的会参与运算,字符串之后+相当于是连接符,所以后面的照抄就行
作者: Honelyboy    时间: 2014-12-12 21:58
1+2=3与字符串“java”相连接变成字符串了。让后分别与数字3和4相连接。
作者: 爱卿    时间: 2014-12-12 22:00
这个式子是的计算顺序是这样的
首先从左至右运算 两个整数做加法运算1+2 =3---变成3+"java"+3+4;
然后3加上"java"字符串 属于连接操作---变成"3java"+3+4;
之后都是字符串之间的连接 所以选择A。
作者: wzl963358694    时间: 2014-12-12 22:02
我是来学习的。。。
作者: 清浅。。    时间: 2014-12-12 22:03

string+int = string   int型加int得int型但是int加字符串是连接关系,所以后面就由先后顺序连接到一起了,我是这么理解的,谢谢~
作者: qowoeo7538    时间: 2014-12-12 22:13
学习了。
作者: 董晗    时间: 2014-12-12 22:15
首先程序运行的时候是按照从左到右依次执行的,1+2+"Java"+3+4-->3+"Java"+3+4,符合“+”在遇到字符串时,能起到连接字符串的作用。不可能说先计算3+4,再计算其它的。如有错误,望指正:handshake
作者: songkaihua    时间: 2014-12-12 22:30
“+”是按顺序执行的,从左往右,有String的是连接,和数字是相加!意思就是1+2是3,然后连接上3接上4
作者: dandan520    时间: 2014-12-12 22:42
int+int=int 在 + String = String 在+int =String + int =String
作者: I空空    时间: 2014-12-12 22:48
因为整条语句只有+,所以程序执行时是按照从左到又顺序执行的,1+2 这时的+属于运算符,所以1+2=3 这时碰到了“Java”是字符串,所以这个时候+变成了字符连接符了,所以选A
作者: cz萑    时间: 2014-12-12 23:20
后面遇到字符串,+就变成了连接符




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2