Я пытаюсь сделать игру ножницы для каменной бумаги в java. У меня есть базовый код здесьjava не разрешает переменную
import java.util.Scanner;
import java.util.Random;
public class RPSBase
{
public static void main(String args[])
{
Random rndm = new Random();
int c =0 + rndm.nextInt(3);
Scanner c2 = new Scanner(System.in);
String pc = c2.next();
switch (c)
{
case 1:
String choice = "r";
char ch = choice.charAt(0);
break;
case 2:
choice = "p";
ch = choice.charAt(0);
break;
case 3:
choice = "s";
ch = choice.charAt(0);
break;
}
switch (ch)
{
case 'r':
if (pc == "r")
System.out.println("It's a tie");
else if (pc == "p")
System.out.println("win");
else if (pc == "s")
System.out.println("lose");
break;
case 'p':
if (pc == "p")
System.out.println("It's a tie");
else if (pc == "s")
System.out.println("win");
else if (pc == "r")
System.out.println("lose");
break;
case 's':
if (pc == "s")
System.out.println("It's a tie");
else if (pc == "r")
System.out.println("win");
else if (pc == "p")
System.out.println("lose");
break;
}
}
}
по какой-то причине, когда я скомпилировать программу я получаю эту ошибку
1 error found:
File: C:\Users\Larry\RPSBase.java [line: 26]
Error: ch cannot be resolved to a variable
Почему я получаю эту ошибку и как это исправить? Я тоже попытался переключиться (выбор), и это тоже не сработало.
Рассмотрите, где объявлен 'ch'? Переменные имеют область действия. Они могут использоваться только внутри этой области. –