在控制台中是否有一种方法可以在按Enter键时阻止java开始新行?

时间:2012-01-24 08:53:06

标签: java newline

例如,如果用户输入7 * 4 我希望它输出7 * 4 = 28

而不是

7 * 4
= 28

我一直在寻找几个小时但没找到任何东西。感谢您提前提供任何帮助。

public class RecursiveMultiplication 
{
public static void main(String[] args)
{
    Console console = System.console();
    String input[] = new String[2];
    String multiplicand, multiplier;
    int product;

    while(true)
    {
        input = console.readLine("?> ").split("\\D+");
        multiplicand = input[0];
        multiplier = input[1];
        product = multiply(Integer.parseInt(multiplicand), Integer.parseInt(multiplier)); 

        console.printf(" = %d", product);

    }
}

public static int multiply(int multiplicand, int multiplier){
    if(multiplier == 0)
        return 0;
    if(multiplier % 2 == 0)
        return multiplicand + multiplicand + multiply(multiplicand, multiplier - 2);
    return multiplicand + multiply(multiplicand, --multiplier);
}

}

1 个答案:

答案 0 :(得分:4)

这是运行Java程序的控制台的限制。这并不容易解决,但你可以看看Java Curses Library。就个人而言,我认为这不值得麻烦。编写Java Swing GUI会更容易。