2013-11-05 5 views
0

if 문에 호환되지 않는 형식 오류 메시지가 나타납니다. 변수 "answer"와 "input2"는 모두 정수이므로 두 변수가 어떻게 호환되지 않는지 잘 모르겠습니다. 어떤 도움이나 통찰력이라도 대단히 감사 할 것입니다! 당신이 값 (==)를 비교하고 싶어 할 때If 문에서 호환되지 않는 형식

public static void addingGame() 
{ 

    System.out.print("\n"); 

    System.out.println("********* Part 2: Adding Numbers **********"); 

    System.out.print("\n"); 

    Scanner inputReader = new Scanner(System.in); 

    System.out.print("Would you like to add some numbers?(y/n)"); 
    String input = inputReader.next(); 

    while (!input.equals("y") && !input.equals("n")) 
    { 
     System.out.print("I need a y/n: "); 
     input = inputReader.next(); 
    }  

    while (input.equals("y")) 
    { 
     Random numberGenerator = new Random(); 
     int randomNumber1 = numberGenerator.nextInt(10); 
     int randomNumber2 = numberGenerator.nextInt(10); 
     int answer = ((randomNumber1) + (randomNumber2)); 
     System.out.print(randomNumber1 + " + " + randomNumber2 + " =: "); 
     int input2 = inputReader.nextInt(); 
     if (answer = input2) 
     { 
      System.out.print("Right! " + answer + " is the answer."); 
     } 
     else 
     { 
      System.out.print("Sorry, " + answer + " is the answer."); 
     } 

     System.out.print("Would you like to play again?(y/n)"); 
     input = inputReader.next(); 
     while (!input.equals("y") && !input.equals("n")) 
     { 
      System.out.print("Sorry - I need a y/n: "); 
      input = inputReader.next(); 
     } 
    }  

    System.out.print("\n"); 

    System.out.print("Thanks - Let's move on to Part 3..."); 

답변

3

당신은 할당 연산자 =을 사용하고 있습니다. 오류가 할당의 결과가 ==가 제공하는, 여전히 if 조건이 boolean 예상대로 int, 사실 온

if (answer = input2) 

if (answer == input2) 

에 변경합니다.

+0

정말 고마워요! 정말 감사! – user2930063