【问题标题】:Program terminating unexpectedly: Java [duplicate]程序意外终止:Java [重复]
【发布时间】:2021-08-24 00:18:25
【问题描述】:

我正在制作一个程序,程序会说“嘿!”如果用户说“嗨”,则回复:“怎么了?”背部。问题是程序在我输入输入之前就终止了。我真的很困惑。我尝试了其他堆栈帖子,但没有奏效。请帮忙! 相关代码:

import java.util.*;  
class Main {
    public static void main(String[] args) {
        System.out.println("Hey!");
        Scanner sc = new Scanner(System.in);
        if (sc.equals("hi")) {
              System.out.println("Whats up?");
        }
        sc.close();
    }
}

如果有任何方法可以缩短代码或使其更高效,请也包括在内。

【问题讨论】:

  • 这能回答你的问题吗? How to get the user input in Java?
  • 您将 sc(扫描仪引用)与字符串进行比较。那永远不会是真的。在你的 if 语句中使用 sc.next(),这意味着你的条件应该是 if (sc.next().equals("hi"))
  • @user15793316 好的。刚刚开始努力!非常感谢!

标签: java input


【解决方案1】:

扫描器类不是用户输入,例如,您可以使用它来获取用户输入,

String input = scanner.next();

你的代码应该是

import java.util.*;  
class Main {
    public static void main(String[] args) {
        System.out.println("Hey!");
        Scanner sc = new Scanner(System.in);
        String input = sc.next(); 
        if (input.equals("hi")) {
            System.out.println("Whats up?");
        }
        sc.close();
    }
}

【讨论】:

  • 谢谢!这解决了我的问题!非常感谢。
  • 不客气 :D
猜你喜欢
  • 2013-07-19
  • 1970-01-01
  • 1970-01-01
  • 2015-02-11
  • 1970-01-01
  • 1970-01-01
  • 2011-01-12
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多