String val = 5+5;String val = 10 + 10 + " Hello "
System.out.println(val);输出
20 Hellopublic class Display {
public static void main(String[] args) {
String val = 10 + 10 + " Hello " + 20 + 10;
System.out.println(val);
}
}产出:
20 Hello 2010有人能解释一下吗?
发布于 2020-01-09 09:22:47
这是字符串连接。一旦添加了字符串,接下来的所有元素都将被添加到字符串中,而不是作为int。
String a = 10 + 5 + " result";这是:
10 + 5 + " result";
15 + " result";
"15 result";
String a = 10 + " result " + 5 + 2;变成:
"10 result " + 5 + 2;
"10 result 5" + 2;
"10 result 52"; 确保在连接之前添加了ints:
String a = 10 + " result " + (5 + 2);编辑:至于
String val = 5 + 5;这将导致问题,因为这两个元素都是ints。您在这里所做的不是连接,而是添加两个int,这将导致另一个int。
发布于 2020-01-09 09:22:19
我看到的解释如下:“加号”运算符定义如下:
int+ String -> String
然后有以下行:(int+ int) + String) + int) + int)依次解析该操作,以以下操作结束:
int(20)
)
发布于 2020-01-09 09:24:17
然后,使用整数20 =>将其添加为字符串,如果使用越来越多的整数添加该字符串,则该字符串将返回字符串。
https://stackoverflow.com/questions/59660631
复制相似问题