2013-09-14 4 views
-4

Я пишу небольшую программу, где пользователь должен угадать номер. Я хочу, чтобы они набрали число, которое они угадывают, а затем назначают значение, вставленное игроком переменной x, чтобы проверить, является ли это правильным значением. Как я могу получить вставленное значение и назначить его переменной x?Как я могу изменить значение int?

Это то, что я до сих пор:

public static void main(String[] args) { 

    Scanner textIn = new Scanner(System.in); 
    System.out.println("Try to guess what number I am thinking of."); 
    //X is the int I want to change 
    int x = 100; 

    //Z is the one I am comparing x to 
    int z = 10; 


    String zGuess = textIn.nextLine(); 
    boolean xTest = true; 
    { 
     if (x == z); 
     System.out.println("You guessed right!"); 
    } 
    //XTEST PART ONE 
    while (x < z) { 
     System.out.println("X < Z"); 
     break; 
    } 
    //XTEST PART TWO 
    while (x > z) { 
     System.out.println("X > Z"); 
     break; 
    } 
} 
+4

Мм, чтобы изменить значение переменной в Int вы делаете 'intVariable = someNewValue;'. –

+0

просто сделайте это 'x = textIn.nextInt();' – exexzian

+4

Я настоятельно рекомендую прочитать книгу или учебник по программированию на Java. Изучение основ, задавая вопросы, будет медленным и оставит вас с неполными знаниями - вы не знаете, что вам нужно спросить. –

ответ

0

Вот простое решение. Окружите его в цикле в то время как и всегда устанавливается x = textIn.nextInt()

public static void main(String[] args) { 
    Scanner textIn = new Scanner(System.in); 
    System.out.println("Try to guess what number I am thinking of."); 
    //X is the int I want to change 
    int x = -1; 

    //Z is the one I am comparing x to 
    int z = 10; 

    while(x != z) 
    { 
     x = textIn.nextInt(); 
     if(x == z) 
     { 
      System.out.println("You got it right!"); 
     } 

     else if(x < z) 
     { 
      System.out.println("Try a higher number."); 
     } 
     else 
     { 
      System.out.println("Try a lower number."); 
     } 

    } 
    System.out.println("Great job!") 
} 
+0

Спасибо за помощь всем. @Patricia Shanahan- Я читаю книгу, я просто решил, что хочу немного разобраться с ней. –

2

метод вам нужно, это http://docs.oracle.com/javase/6/docs/api/java/util/Scanner.html#nextInt%28%29

Так что в вашем случае это означает, что

вы можете сделать x = textIn.nextInt();

Берут посмотрите на javadoc сканера http://docs.oracle.com/javase/6/docs/api/java/util/Scanner.html также.

И учебник Oracle, как использовать класс Scanner

http://docs.oracle.com/javase/tutorial/essential/io/scanning.html

+0

лучше подходит для комментариев - или еще немного добавить больше информации – exexzian

+0

@sansix Я ​​расширил свой ответ –

Смежные вопросы