是否有与getchar等效的Java?

时间:2011-01-28 18:42:19

标签: java

我有一个简单的客户端服务器程序,其中我的菜单有问题:

do {  
    System.out.println("---- MENU ----\n");  
    System.out.println("(drv) - List drives");  
    System.out.println("(pwd) - Current path");  
    System.out.println("(ls) - List files in a directory");  
    System.out.println("(quit) - Quit program\n");  
    System.out.print("Enter a command: ");  
    command = scanner.nextLine();  
    sendMessage(command);  
    message = (String)in.readObject();  
    System.out.println(message);  
    System.in.read();  
}while(!command.equals("quit"));`  

我想在屏幕上打印结果,等到我按 Enter 然后再次显示菜单,所以我使用System.in.read()。我的问题是它第一次工作,但如果我选择其他选项,它不会打印任何东西:

  

---- MENU ----

     

(drv) - 列出驱动器
  (pwd) - 当前路径
  (ls) - 列出目录中的文件
  (退出) - 退出程序

     

输入命令:pwd
  D:\ Documents and Settings \ asname \ workspace_java \ server

     

---- MENU ----

     

(drv) - 列出驱动器
  (pwd) - 当前路径
  (ls) - 列出目录中的文件
  (退出) - 退出程序

     

输入命令:ls

在Java中是否存在类似于getchar的方法,我可以使用它?

1 个答案:

答案 0 :(得分:4)

只需在scanner.nextLine();后添加System.out.println(message);即可等待