这道题A和C都是正确的,B和D很明显是错误的,B里面int型和String型是不能直接比较的,D里面i+这是个语法错误,java里面不能这么用,A和C中,当int和String型遇到+操作符的时候,这里面+不再是数学运算的意思,而是连接符,int型会自动转换成String型,这时的+是java中唯一重载的运算符,而s+=i和s=i+s在效果上是一样的,都是连接,但结果不一样,B打印出s应该是“你好3”,C打印出s是“3你好”。
应该是A和C都对,s+=i 跟s=i+s是一样的 加的时候i会自动转化为字符串
B i是int s是String 不能直接比较,D i加后还是int 不能转化为String.
a因为s+=i;就是s=s+i; ‘+’是连接符。
b因为i==s不同类型不能比较。
c因为不同类型不能相加。
d没有那么写的
B.选项(i==s)错误,必须相同类型才能判等。
D.选项s=i+;语法错误。
A.C.选项似乎没有错误。
自己测试一下就知道了。
D项 编译都不能通过咧
小弟试了一下 它报语法错误:标记"+",应为"++"