Как убедиться, что используется только один выход, даже если критерии соответствуют двум выходам? - PullRequest
0 голосов
/ 03 апреля 2019

Я работал над небольшим проектом, ничего сумасшедшего, просто показать что-то моим друзьям, и у меня возникла проблема, когда я пытался создать две разные возможности. Я пытался сделать так, чтобы, если числовой гринератор придумал число 1, использовался другой метод, чем если бы он придумал другое число. Однако когда я попробовал это, оба метода побежали. Я надеялся, что есть другой способ, которым я мог попробовать это. Дайте мне знать, если у вас есть какие-либо идеи.

Я проверил в своих java-книгах, которые преподают мне, и онлайн, в "Stackoverflow" и в общем поиске.

public static void main(String args[]) {
    Scanner keyboard = new Scanner(System.in);
    Random myRandom = new Random();
    long randomNumber;

    System.out.println("What is your question my puppet?");
    keyboard.nextLine();

    randomNumber = myRandom.nextInt(10);

    if (randomNumber ==1) {
        System.out.println("Try rewordding that, it doesn't sound right");
        keyboard.close();

    }              


    if (randomNumber > 5) {
        System.out.println("Ah, I can sense that yes is the answer you're looking for.");
    } else {
        System.out.println("Ah, I can sense that no is the answer you're looking for.");
    }

    keyboard.close();
}
}

Я ожидаю, если выбрано число 1, чтобы появилось сообщение «Попробуйте переписать это, это звучит неправильно», но поскольку оно также соответствует критериям для числа ниже 5, то это сообщение всплывает до.

1 Ответ

2 голосов
/ 03 апреля 2019

Добавьте else перед вторым (в настоящее время независимым) if.Мол,

if (randomNumber == 1) {
    System.out.println("Try rewordding that, it doesn't sound right");
    // keyboard.close(); // not needed you have another close call later.
} else if (randomNumber > 5) {
    // ...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...