从终端获取输入时返回不需要的回车

时间:2011-07-19 07:46:01

标签: java

我刚开始学习Java并且遇到了一些小问题,我不知道如何解决。它与this问题相同,但那里的解决方案不起作用。那里的问题被认为是与Netbeans有关的结果,从命令行编译代码可以解决问题,但我编译并从命令行运行。

基本上,当我运行以下代码时(为了简洁而剪断)

    System.out.println("Number: ");
    line = in.readLine();

我得到以下输出:

Number:
//Input cursor is found here

我正在使用Ubuntu附带的Gnome终端运行代码。有谁知道是什么导致了这个?

2 个答案:

答案 0 :(得分:4)

如果您不想使用尾随换行符,请使用print代替println

System.out.print("Number: ");
try {
    line = in.readLine();
}

println的Javadoc已经这么说了:

  

通过写行分隔符字符串来终止当前行。行分隔符字符串由系统属性line.separator定义,不一定是单个换行符('\n')。

答案 1 :(得分:1)

使用System.out.print()代替System.out.println()