【问题标题】:Java: input from Scanner behaves weirdlyJava:来自 Scanner 的输入行为异常
【发布时间】:2017-10-13 17:25:47
【问题描述】:

只是为了测试,我写了这个很短的程序:

import java.util.Scanner;

public class Main {
    public static void main(String args[]) {
        Scanner scan = new Scanner(System.in);
        String input = scan.nextLine();
        if (input == "y" ) {
            System.out.println("Test");
        }
    }
}

当我输入 y 时,它不打印任何内容,并且通常以退出代码 0 结束。

这只是我机器上的情况吗?如果是这样,为什么会这样?

或者我在这里犯了一个错误?如果是这样,我需要做什么来修复它?

非常感谢您。

【问题讨论】:

    标签: java.util.scanner


    【解决方案1】:

    您对字符串的比较是问题所在。请改用input.equals("y")。见here for details

    【讨论】:

    • 非常感谢,这是一个中肯的回答!它现在正在工作:)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多