当前位置: 首页 > 知识库问答 >
问题:

在用户输入字符后跳出无限循环

魏高邈
2023-03-14

我想对一条消息进行无限循环,如果用户输入一个字符,例如“X”,就停止它。但是它在if语句上得到一个错误,说它是一个不可达的代码。有人能帮帮我吗。

import java.util.Scanner;
public class Loop {

    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        char y;

        while (true) {
            System.out.println("Good Morning!!!");
        }
        y = input.next().charAt(0);
        if (y == 'y') {
            break;
        }
    }   
}

共有1个答案

谢清野
2023-03-14

您的if语句不在while循环中:

import java.util.Scanner;
public class Loop {

    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        char y;

        while (true) {
            System.out.println("Good Morning!!!");
            y = input.next().charAt(0);
            if (y == 'y') {
                break;
            }
        }
    }   
}
 类似资料:
  • 问题内容: 我有一个无限的while循环,我想在用户按下某个键时退出。通常,我用来获取用户的响应。但是,我不必等待响应。我想要这样的东西: 这应该很简单,但是我似乎无法弄清楚。我倾向于使用线程的解决方案,但我不想这样做。我该怎么做? 问题答案: 我认为您可以使用msvcrt做得更好: 可悲的是,仍然是特定于Windows的。

  • 问题内容: 我有这个bash脚本,基本上可以启动带有进度指示器的Web和Selenium服务器。由于启动selenium服务器需要一些时间,因此我正在无限循环中检查状态。 问题是,在等待启动时​​,我不小心按下了键,该键显示在屏幕上,如果循环结束(超时),它也将显示在命令提示符下。 我想在循环内禁用所有用户输入(当然除了控制键): 问题答案: 用于关闭键盘输入。 关闭键盘输入并重新启用键盘输入。

  • 下面的代码循环了两次。第一个while循环要求用户输入(以做出选择)。我把选择默认值设置为“n”,使它变得更简单。 因此,它命中if语句并开始第2个while循环。现在它要求用户进行另一个选择。用户只能输入“a”,因为其他任何东西都会出现错误陷阱。用户输入“a”并得到添加一个数字的提示(变量num=0)。用户输入一个数字。 使用更多信息更新的代码 我已经尝试使用不同的变量进行选择。它不起作用。我想

  • 在试图使Do/While循环工作时,我很难找到正确的语法。我想用C语言编写一个计算器,让用户输入一个字符串,然后它做它的事情并打印结果,询问用户是否想再去一次。 到目前为止,我有一个简单的main函数,只是为了让Do/While循环正确,但是当我输入Y或Y时,程序只是问我是否想再次继续,它没有给我再次运行“计算器”部分的机会。我做错了什么?

  • 我添加了一个while循环,这样如果用户输入无效值,代码将重新提示用户输入有效值。但是当用户输入无效值时,代码会进入无限循环。任何帮助都将不胜感激!!

  • 我正在尝试编写一个程序,允许在无限循环中生成随机数。如果用户按下'c',它将脱离循环。但是循环只在我按下c时开始,它应该在之前开始,当我按下'c'时它应该停止。 另外,我想知道如何才能只使用while循环而不是do-while循环来完成这个程序。当我使用while时,我从开始,然后使用来自input的if语句中断循环,但这也不起作用。内部仍然有两个for循环。 多谢