Наверное, вам покажется мой вопрос странным, но... Есть код:
public class Main {
public static void main(String[] args) {
int a = 1;
for (int x = 1; x <= 10; x++) {
a = a * x;
}
System.out.println(a);
}
}
Т.е. тут мы посчитали, чему равно 10! и вывели на экран это значение. И тут у меня возник вопрос. Изначально, мы имеем а = 1, а в конце уже а = 10!. Что нужно сделать, чтобы "а" изменялось только внутри цикла, а на экран выводилось 1?
CilitBang
25 уровень
Область применения "а"
Решен
Комментарии (4)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Павел МинеевExpert
23 августа 2019, 10:50полезный
Да, область видимость а перекрывает весь цикл, ограничить видимость а внутри цикла нельзя.
+1
hidden #598481
23 августа 2019, 10:48решение
Вообще область видимости переменной ограничивается фигурными скобками, в которых она объявлена:
переменная a объявлена внутри метода main, значит она видна на протяжении всего метода main;
переменная x объявлена внутри цикла for, значит она видна только в пределах цикла for.
+2
hidden #598481
23 августа 2019, 10:45
А зачем, что ты пытаешься сделать?
Потому что пока что ответ банальный: снова присвой переменной а значение 1 после цикла. Но в этом случае весь цикл смысла не имеет, т.к. с результатами его работы ты ничего не делаешь.
+2
CilitBang QA в КЕФИР!
23 августа 2019, 10:51
Смысла нет абсолютно никакого. Просто хотел понять, как это работает, увидеть область. Спасибо.
0