Я новый программист, пытающийся практиковать, создавая игру. Я хочу, чтобы игрок мог установить свое имя, а также ответить «да» или «нет» относительно того, правильно ли это имя. Я сделал это, используя цикл while. Однако, поскольку имя инициализируется внутри цикла, я не могу использовать его снаружи. Мне было интересно, если это все равно.JAVA: Можно ли использовать переменную вне цикла, которая была инициализирована внутри цикла?
Мой код, вероятно, очень простой и грязный. Я прошу прощения за то.
Scanner input = new Scanner(System.in);
String name;
int nameRight = 0;
while (nameRight == 0) {
System.out.println("What is your name?");
name = input.nextLine();
System.out.println("So, your name is " + name + "?");
String yayNay = input.nextLine();
if (yayNay.equals("yes") || yayNay.equals("Yes")) {
System.out.println("Okay, " + name + "...");
nameRight++;
}
else if (yayNay.equals("no") || yayNay.equals("No")) {
System.out.println("Okay, then...");
}
else {
System.out.println("Invalid Response.");
}
}
В принципе, я хочу, чтобы имя строки было инициализировано внутри цикла, поэтому я могу использовать его вне цикла.
Нет, это невозможно использовать за пределами внешнего вида, если определение переменной находится внутри цикла. Но так как 'name' определяется вне цикла, вы также сможете использовать его за пределами цикла. – SomeJavaGuy
Нет. Возможно, вы сможете использовать его значение, если вы скопируете его в переменную, объявленную за пределами цикла, но тогда вы можете так же легко объявить эту переменную из цикла. – Stultuske
Хорошо спасибо. Тогда мне нужно будет изменить код. – max