3 回答
TA贡献1820条经验 获得超9个赞
您在 system.in 上注册 Scanner 两次,在 MyClient 中注册一次:
public class MyClient {
public static void main(String args[]) {
Scanner scan = new Scanner(System.in);
一旦进入 CustomerUserInterface 登录方法:
@Override
public void login() {
Scanner scan = new Scanner(System.in);
这是行不通的,因为第一个扫描仪已经有了 System.in 流。
您需要在整个程序中使用相同的扫描仪实例。
TA贡献1757条经验 获得超7个赞
该类的文档告诉您,如果输入流耗尽,则会抛出。因此我假设输入流由于某种原因关闭。ScannerNoSuchElementException
你如何运行你的代码?通过 IDE 还是仅通过java MyClient命令行调用?也许这就是你的错误。
如果您运行以下代码,它应该重复您的输入。如果这不起作用,那么您正在以错误的方式调用代码。
public class MyClient {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println(sc.nextInt());
}
}
添加回答
举报