Java:你能解释一下这个简单的语句(System.out.println)吗?

标签 java

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/

相关文章:

java - EJB 的访问控制列表 (ACL)

java - 如何从 DOM 元素捕获 Java 字符串?

java - 将 Scala List[List[Double]] 转换为 Java double[][]

java - 有没有简单的小程序 url 生成器?

java - 用户输入的总分、平均分、最低分和最高分(条件控制结构)

java - 我如何控制android mediaplayer?

Java 数独 GUI 板

java - 警报对话框中的图标应该有多大?

java - 生成方法中无法识别变量

java - 使用dom4j从节点获取属性值