为什么基本数据类型与字符串相加结果为字符串?看完反编译后的代码就一目了然了。
源码:
public class StringAddNum {
public static void main(String[] args) {
int a = 1;
String s = "AA";
System.out.println(s+a);
}
}
输出结果:AA1
反编译后的代码:
public class StringAddNum
{
public StringAddNum()
{
}
public static void main(String args[])
{
int i = 1;
String s = "AA";
System.out.println((new StringBuilder()).append(s).append(i).toString());
}
}
基本数据类型都能拼接到字符串里,所以基本数据类型与字符串相加结果还是字符串。