核心java打印声明

jag*_* sh 4 java core println

为什么java编译器会给出

100A

作为输出时,我曾经试图打印System.out.println('2'+'2'+"a")

A22

System.out.println("a"+'2'+'2').请详细解释.谢谢)

Era*_*ran 14

'2'是一个字符,所以'2'+'2'将该字符的int值添加到自身(50 + 50)然后将"a"添加到它,给你100a.

"a"+"2"+"2"执行字符串连接,因为第一个操作数是字符串.因此你得到了a22.

请注意,表达式是从左到右计算的,因此前两个操作数的类型确定+是执行int添加还是String连接.