如果输入了超出选项的内容,如何重复if或switch语句?

这将大部分重复,但是由于它太长且太复杂,我真诚地不知道如何搜索此问题。不好意思!

回到问题所在,假设我从用户那里获得了Scanner类的输入。想象一下,扫描仪已导入并且一切都已设置。

Scanner scan = new Scanner();

String input = scan.nextLine();

switch( input) {

case "attack":

System.out.println( "You attacked the enemy!");

break;

case "defend":

System.out.println( "You blocked the enemy!");

break;

default:

System.out.println( "This is not an option!");

// somehow repeat the process until one of the case options are

// entered.

}

在执行案件之前,如何重复请求输入并检查案件的过程?

我可以将其放在while循环中,当输入case选项时,我可以退出while循环,但是当我有很多switch /

if语句都需要扎实的输入才能进行处理时,这似乎太多了。其余代码。有没有办法在Java中更有效地做到这一点?

回答:

Scanner scan = new Scanner(System.in);

loop:

while (true) {

String input = scan.nextLine();

switch (input) {

case "attack":

System.out.println("You attacked the enemy!");

break loop;

case "defend":

System.out.println("You blocked the enemy!");

break loop;

default:

System.out.println("This is not an option!");

break;

}

}

while (true)可能会造成无限循环。在switch语句中,如果输入是攻击或防御,我们将跳出循环。如果两者都不是,我们只会跳出switch语句。

while循环用loop:标签标记。这样我们就可以告诉它break loop;打破循环。另一方面break只打破了switch语句。

以上是 如果输入了超出选项的内容,如何重复if或switch语句? 的全部内容, 来源链接: utcz.com/qa/404007.html

回到顶部