java - 使用输入扫描器执行 while 循环

标签 java

我想用 do 创建选项,而用户在输入正确的字母后将跳出循环。我尝试制作一个,但如果我输入 while(type == "Y") 它只会让我脱离循环,无论我按什么或如果我退出 while(type != "Y") 它都会发生永远循环,所以我在其他地方做错了,但我不知道在哪里。

public class JavaApplication8 {
static String type;
public static void main(String[] args) {
    Scanner scanner = new Scanner(System.in);
    do {
        System.out.println("Press Y to get out of the loop");
        type = scanner.next();
    } while (type == "Y");

  }

}

最佳答案

而不是

while (type == "Y");

使用

while (type.equals("Y"));

== 检查两个字符串是否引用同一个对象
.equals() 检查两个对象包含相同的数据。

另外,似乎您希望只要用户不输入Y就运行循环。因此将其更改为:

while (!type.equals("Y"));

关于java - 使用输入扫描器执行 while 循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27469960/

相关文章:

java - Selenium Webdriver AJAX - 如何等待请求完成

java - CompassQuery - 仅保留关键字,不保留别名或运算符

java - 如何在java中创建mongoDB objectid

java - Hibernate 标准排序依据

java - 在 JAVA 中读取列表时,我们可以使用 .contains(BigDecimal.ZERO) 吗?

java - 在我的 Java 应用程序中添加 Web 浏览器

java - 如何使用 jTDS 连接到 Azure SQL 数据库

java - 如何在 Docker 容器中向 Tomcat 添加 SSL 证书?

java - 默认的 continue 和 if else 语句

java - MySQL + JDBC updateBlob 和 updateBinaryStream 抛出 NotUpdateable