代码如下:
ublic class Test {
public static void main(String [] args){
int x = 10;
int y = 20 ;
String str = "x"+"+"+"y"+"=";
System.out.println(str+x+y);
}
}
这个我认为的输出结果是:x+y=30;可是输出结果为什么是x+y=1020;求大神解释一下,谢了!作者: 张頔 时间: 2012-6-17 00:52
int x = 10;
int y = 20 ;
String str = "x"+"+"+"y"+"=";
System.out.println(str+(x+y));//你要是不加()的话就会向上转成字符串相当于字符串的拼接作者: 钟成军 时间: 2012-6-17 00:55
张頔 发表于 2012-6-17 00:52
int x = 10;
int y = 20 ;
String str = "x"+"+"+"y"+"=";
加了()就不会拼接吗?它们向上转型发和在什么时候?作者: 潘东升 时间: 2012-6-17 01:19
加了()一样会拼接,不过是先运算出()中的运算结果,再用结果和str拼接,这不是你想要的?作者: 胡大强 时间: 2012-6-17 01:20
class T {
public static void main(String [] args){
int x = 10;
int y = 20 ;
String str = "x"+"+"+"y"+"=";
System.out.println(str+(x+y)); //////输出x+y=30
}
}