我写了以下代码:
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的情况有所不同。
答案 0 :(得分:1)
要使用BlueJ输入任何值,我通常使用BufferedReader语句。 它是这样的, BufferedReader name = new BufferedReader(new InputStreamReader(System.in)); 在类或方法中编写此语句后,您可以使用控制台输入任何值。 在请求值之后一定要给出这个声明。 如果是整数 - int variable name = Integer.parseInt(name.readLine);
答案 1 :(得分:0)
我认为BlueJ有一个View>控制台或View>输出窗口。我相当肯定,但是自从我使用Bluej以来已经有很长一段时间了。无论如何,您可以使用Scanner对象。扫描仪是处理输入的好方法,我认为它更常用于输入。它是Java API的一部分,可以在此处找到如何使用它的示例:
http://docs.oracle.com/javase/7/docs/api/java/util/Scanner.html
页面上显示的代码用于从文件中扫描,但可以使用相同的方法从控制台获取输入,然后对其执行某些操作。当您运行代码并且无论您在哪里看到System.out.println调用的输出时,程序都应该等待您输入内容。