int a = 1;
int b = 3;
int c = 5;
System.out.println(a + b + (c + " = ");
怎么会这样输出45 =而不是9 =?我只是在数学上不好或我只是与运算符优先权混淆?
int a = 1;
int b = 3;
int c = 5;
System.out.println(a + b + (c + " = ");
怎么会这样输出45 =而不是9 =?我只是在数学上不好或我只是与运算符优先权混淆?
1 + 3 = 4
5加“=”让你“5 =”,这是一个字符串,当添加一个字符串,你会得到一个字符串(它将其连接在一起的)一个int。
当你添加一个int和一个字符串时,它会连接...所以你得到4 +“5 =”(一个字符串)..并且你得到45 =。
也许多个downvotes可能与那些谁坚持这个[元回答](http://meta.stackexchange.com/a/105231/271768)和这[元回答](http:// meta.stackexchange.com/a/202897/271768)。 “有用答案”的定义对于SO来说含糊不清,如果某些东西几乎是重复的,那么重复的答案可能根本没有帮助。除非它提供了其他地方尚未回答的信息。只是我2美分。 –
你的意思是...在这两个重复问题中表达并赞成的哲学? – ThePerson
这两个元问题不是同一个问题。他们是相关的,但绝对不是重复的。一个人明确提出降低重复答案的问题,另一个问题涉及回答问题的人是否应该更负责任,并试图至少看看问题是否曾经被问过。恰恰如此,答案中的一些想法重叠。 –
这与数学和类型无关。你期待什么*'5 +“=”'是? – David