BlueJ 和键盘输入

BlueJ and Input from keyboard

我写了下面的代码:

import java.io.*;
public class Typer
{
    public static void main(String[] args) 
    {
       Console cons;
       cons = System.console();
       boolean edition = true;
       if(cons == null)
       {
           edition = false;
       }
       if(edition)
       {
           String name = cons.readLine("Give your name: ");
           System.out.println("Your name is: "+ name);
       }
       else
       {
           System.out.println("There is no console!");
       }
    }
 }

我正在使用 BlueJ,它不提示输入。它只是打印出没有控制台!有什么想法吗?谢谢!

当我在 powershell 编译和 运行 程序时,它 运行 正常。由于某些原因,bluej 有所不同。

我认为 BlueJ 有一个 View>Console 或 View>Output window。我相当确定这一点,但我已经有很长时间没有使用 Bluej 了。无论如何,您可以使用扫描仪对象。 Scanner 是处理输入的好方法,我认为它更常用于输入。它是 Java API 的一部分,可以在此处找到如何使用它的示例:

http://docs.oracle.com/javase/7/docs/api/java/util/Scanner.html

页面上显示的代码用于扫描文件,但可以使用相同的方法从控制台获取输入,然后对其进行处理。当您 运行 代码以及您看到 System.out.println 调用输出的任何地方时,程序应该等待您输入内容。

要使用 BlueJ 输入任何值,我通常使用 BufferedReader 语句。 事情是这样的, BufferedReader 名称=new BufferedReader(new InputStreamReader(System.in)); 在 class 或方法中写入此语句后,您可以使用控制台输入任何值。 请务必在询问价值后给出此声明。 在整数的情况下- int 变量名= Integer.parseInt(name.readLine);