如何在与用户输入相同的行中打印某些内容?

时间:2015-09-16 15:30:40

标签: java printing user-input

我写了这段代码:

import java.util.Scanner;
public static void main (String[] args){
   Scanner scan = new Scanner (System.in);
   String inp;
   int m;
   System.out.println ("Please enter some characters.");
   inp = scan.nextLine();
   m = inp.length();
   System.out.println(" = " + m);
}

如果我运行它,我得到这样的东西:

Please enter some characters.
12345
 = 5

但是如何才能将= 5打印在与用户输入的字符相同的行上,如下所示?

Please enter some characters.
12345 = 5

3 个答案:

答案 0 :(得分:0)

标准Java中没有允许您轻松执行此操作的功能。

您需要使用ANSI escape codes与终端进行互动。所有终端都不支持此功能。

您也可以使用一个可以为您执行此操作的库,以随机顺序显示一些示例:

答案 1 :(得分:0)

就这样写:

System.out.print(" = " + m);

println 会打印到新行。 希望它有效

答案 2 :(得分:0)

 System.out.print("Please enter some characters.");
 inp = scan.nextLine();
 m = inp.length();
 System.out.println(" = " + m);

打印问题时,去掉 ln 部分 (System.out.print("Please enter....)) 这将允许您的输入与提示在同一行。 然后你可以打印System.out.println( inp + " = " + m); 但是,据我所知,您无法在输入后输入内容,但您可以回显它。