사용자가 선택한 가위 바위 가위 프로그램을 만들어서 컴퓨터의 선택에 따라 테스트해야합니다. 매 경기가 끝나면 선수에게 계속할지 묻고, 계속하거나 종료하려면 'Y'또는 'N'을 입력해야합니다. 내가 생각할 수있는 최선의 방법은 while 루프 였고 마지막 비트를 제외한 모든 것이 잘 작동합니다.자바 록 페이퍼 가위 루프
import java.util.Scanner;
public class rockpaperscissors {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
char cont = 'y';
while (cont == 'y'){
int com = (int)(Math.random() * 3);
System.out.println("Paper (0), Rock (1), or Scizzors (2)?");
int hum = input.nextInt();
if (com==(hum))
System.out.println("It's a tie!");
else if (hum == 0)
{
if (com == 1)
System.out.println ("You chose paper, computer chose rock You Win!");
else if (com == 2)
System.out.println ("You chose paper, Computer chose scissors You Lose!");
}
else if (hum == 1)
{
if (com == 2)
System.out.println ("You chose Rock, computer chose scissors You Win!");
else if (com == 0)
System.out.println ("You chose Rock, Computer chose paper You Lose!");
}
else if (hum == 2)
{
if (com == 0)
System.out.println ("You chose Scissors, computer chose paper You Win!");
else if (com == 1)
System.out.println ("You chose Scissors, Computer chose rock You Lose!");
}
System.out.println("Would you like to continue? (Y/N)");
cont = input.nextLine().charAt(0);
}
}
}
루프를 실행하면 게임이 제대로 실행되지만 '인덱스 범위를 벗어나는 문자열'오류가 발생합니다. 어떤 생각이 어떻게 해결할 수 있습니까?