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