Я хотел бы знать, почему есть 2 разные выходы:реализация двойных переменных и различные выходы
double a = 88.0;
System.out.println(a + 10); // 98.0
double result = 88.0;
System.out.println("The result is " + result + 10); // The result is 88.010
Я хотел бы знать, почему есть 2 разные выходы:реализация двойных переменных и различные выходы
double a = 88.0;
System.out.println(a + 10); // 98.0
double result = 88.0;
System.out.println("The result is " + result + 10); // The result is 88.010
Когда вы оцениваете "the result is " + result + 10
вы оцениваете String + double + int
.
Когда это выполняется, в строку добавляется double
, создавая еще одну строку, а затем добавляется int
к этой строке, указывая другую строку.
Таким образом, вы получите:
"the result is " + result + 10
"the result is 88.0" + 10
"the result is 88.010"
Это отличается от
"the result is " + (result+10)
который дал бы
"the result is 98.0"
Если вы используете System.out.println()
элементы вы положили внутри будут автоматически отливают в String
, Плюс используется для добавления отдельных строк вместе.
Если вы хотите выполнить математическую операцию, используйте переменные в скобках.
Так что ваш код shold выглядеть следующим образом:
System.out.println("the result is " + (result + 10));
Ваш первый пункт не совсем правильно. Посмотрите на первый пример: В 'System.out.println (a + 10);' знак плюса явно не используется для добавления _Strings_ '' '' и '' 10 "' вместе; он добавляет _values_. Вы правы во втором случае. –