не соображу, почему результат команды в 10 строке - "9.9", а результат команды на 11 строке - "9.0"?
объясните пожалуйста.
zertalls
8 уровень
Краткий вопрос
Решен
Комментарии (4)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Serhii
18 июня 2019, 20:18
в 11 строке возврат в int что отсечет все от целого числа
0
СанекExpert
12 июня 2019, 09:36
Если ничего не путаю, хоть и метод возвращает double результат возврата будет неявно приведен к int (отбрасывается все после точки, т.к. на входе мы имеем int i) в строке №11, а в строке №10 он явно приводит из int в double за счет точки во втором операнде.
В курсе была где-то статья на эту тему.
+1
RiccioMaster
12 июня 2019, 09:33
Почитайте про приведение типов.
+1
Иван Горбатов Java Developer в Siblion
12 июня 2019, 09:32
потому что i*110/100 это всё int результат операции будет 9 , а метод addTenPercent у тебя double и на экран выводит 9 в типе double 9.0
а вот i*1.1 это ты int*double Java преобразует i в double производит операцию и возвращает тебе 9.9 типа double
+1