java - 为什么一个整数与一个数字连接会产生一个字符串?

标签 java casting

我在进行 AP Comp Sci 实践测试时发现了以下问题:

什么是输出:

System.out.println("1" + new Integer(2) + 3);

答案是

123,

我很困惑,因为 new Integer(2) 没有被转换成字符串,因此为什么 java 编译器认为 new Integer(2) + 3 如果两个部分都是整数,则语句是字符串连接?

最佳答案

加法是左结合的。 a + b + c == (a + b) + c

关于java - 为什么一个整数与一个数字连接会产生一个字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16409394/

相关文章:

c++ - 如何检查从 C++ 字符串到 unsigned int 的转换

java - Spring,Java : Error, 无法将 java.lang.Long 转换为 java.util.Date

c# - 如何将 System.Object[*] 转换为 System.Object[] II

Java-选项卡上的按键监听器不起作用

java - Spring boot web war - 找不到 web-inf/classes/context.xml 文件

java - 需要将小写下划线字符串更改为 camelCase

java - 为什么 getter 方法不返回任何对象的属性?

java - JVM是怎么计算committed堆内存的?

c++ - 在高级类的 vector 中调用派生类的方法

java - 如何从java中的类规范名称创建类?