阅读以下代码,输出结果是什么?
`public class Test {
public static void main(String[] args) {
int X=100;
int Y=200;
System.out.println("X+Y="+X+Y);
System.out.println(X+Y+"=X+Y");
}
}`
运行结果:
为什么会有这样的输出结果?
这是因为在System.out.println()语句中‘+’有连接作用和作为运算符俩种作用,根据前后的内容会有不同的用法。
对于System.out.println("X+Y="+X+Y);
‘"X+Y="’是一个字符串,后面的+号会直接将这个字符串与后面的数据连接,当计算机编译到下一个加号时X已经当作数据输出了,这时+号仍然会默认为连接符,直接紧随其后打印出Y的值。
而对于System.out.println(X+Y+"=X+Y");
先执行‘X+Y’,因为加号前后都是数据,这时便会直接计算X+Y,之后的加号继续起连接作用输出=X+Y。