Почему правильно выполнение выглядит именно так, если у нас есть еще одно условие, если равно нулю то выводим ноль, а в данном случае он нас пропускает и не пишет, что условие не выполнено
Tolya_java
6 уровень
Почему так
Обсуждается
Комментарии (4)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Сергей Нестерук
10 марта 2021, 15:24
Как понимают вопрос идет из ответа, что предлагает JavaRush
if (a > 0) {
a *= 2;
}
else if (a < 0) {
a++;
}
System.out.println(a);
Почему не нужно что-то писать про 0?
У нас сначала проверяет больше ли число 0 и делает какое-то действие с ним;
Потом проверяет меньше ли он 0 и делает какое-то действие с ним;
После этих двух проверок если они не прошли остается 1 вариант, что это число только 0(ноль), а так как при 0 нам нужно только вывести это значение а не сделать какое-то действие, то нет смысла от оператора else.
Вывод же результата, это отдельный метод за частью блока if....else
Есть 2 вариатна когда была бы нужна третья проверка:
1. если бы мы метод System.out.println(a); писали сразу в каждом if, а не отдельно
if (a > 0) {
a *= 2;
System.out.println(a);
}
else if (a < 0) {
a++;
System.out.println(a);
}
else { System.out.println(a);
}
2. если бы при нуле нужно было бы что-то с этим числом делать и/или вывести какое-то сообщение отличное от просто вывода значения.
+3
Tolya_java
8 марта 2021, 18:23
Прикреплена ссылка, или она не отображается?
0
НикитаExpert
8 марта 2021, 19:37
нет)
0
НикитаExpert
8 марта 2021, 18:06
вы код покажите
0