System.out.println(1 + 2 + "3");
输出: 33
System.out.println("1" + 2 + 3);
输出: 123
最佳答案
嗯,这就是所谓的操作顺序。
1 + 2 被计算为等于 3,然后将字符串“3”附加到它上面,将前 3 转换为字符串并打印“33”。
在您的第二个实例中,“1”已经是一个字符串,因此添加数字会将它们转换为要匹配的字符串,因此附加“2”,然后附加“3”并打印“123”。
附:字符串优先,因为它们具有比整数更高的转换优先级,因此它会将整数转换为字符串,但不会将字符串转换为整数,就像第二个示例一样。
关于Java:你能解释一下这个简单的语句(System.out.println)吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2361789/