急!!!!!java System.out.println()输出规则!!!!!

public class Test {
public static void main(String[] args) {
int x = 5;
int y = 2;
int a=5,b=4,c=3;
System.out.println(x+y+"K");
System.out.println("abc"+a+b+c+3);
}

}
结果是:
7K
abc5433
这是为什么???????

第1个回答  2012-09-25
x+y的时候,是数字运算,而"K"是字符串,数字与字符串的运算没有强制转换的时候,是不能相加的。
我举个例子:
int a=5;
String b="5";
System.out.println(a+b);
结果为:55,所以数字与字符串运算,是连接的而不是相加的。。
总结,你的第一问,按照四则运算规则(就是小学时候的加减乘除),先把int型的加起来再连接字符串K。
总结第二问,先连接,再连接。。大家都变成了String型,所以不存在四则运算了。如有疑问我会再回答的。。
第2个回答  2012-09-25
1L正解
第3个回答  2012-09-25
System.out.println(x+y+"K");为 7K
System.out.println("abc"+a+b+c+3); 结果为abc5433
第4个回答  2012-09-25
额第一个你把字符串摆在前面,int类型放后面也会输出K52
相似回答