Java中如果定义: int a = 2; System.out.println("1" + 2); 为什么后面那个2被转化成字符串输出了?

2024-11-27 12:59:10
推荐回答(5个)
回答(1):

Java是这样的啦,字符串+变量,会把变量转换成字符串的,这是系统默认的功能。
System.out.println(1+a)会输出3
System.out.println(1+2)会输出3
System.out.println("1"+a)会输出12
System.out.println("1"+2)会输出12
System.out.println("Hello"+" World")会输出Hello World
System.out.println("1+2="+(1+2))会输出1+2=3

回答(2):

所有的类是继承Object类的,它里面有一个方法toString(),返回一个字符串,当你调用一个输出函数输出对象时它会自动调用toString()方法,"1"会在字符串池中创建一个对象,所有输出它时就会调用toString()方法,变成字符串。在字符串中”+“表示拼接所有就输出12;

回答(3):

因为前面的"1"是字符串类型 int型的2与string的相加 int型被转换成string

回答(4):

字符串与数字相加数字会自动转化成字符串

回答(5):

拼接了、