Java更新一行而不是整个屏幕
我想知道如何在扫描firstName后更新First_name,然后在扫描lastName后更新Last_name。我不知道如何在不重写整行的情况下做到这一点Java更新一行而不是整个屏幕,java,line,screen,system.out,Java,Line,Screen,System.out,我想知道如何在扫描firstName后更新First_name,然后在扫描lastName后更新Last_name。我不知道如何在不重写整行的情况下做到这一点 public class Main { public static void main(String[] args) { Scanner scan = new Scanner(System.in); System.out.print("First_name "); System.
public class Main {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.print("First_name ");
System.out.println("Last_name");
System.out.println("Enter First name: ");
String firstName = scan.nextLine();
System.out.println("Enter Last name: ");
String lastName = scan.nextLine();
}
}
动态更改文本是不可能实现您想要的功能的。使用
System.out.println()
写入输出将把它写入控制台,之后,它将不受您的控制。任何语言都是如此
您可以在重新编写所有内容之前清除控制台,这将使它看起来更加动态。这样做看起来像这样:
public static void clearScreen(){
系统输出打印(“\033[H\033[2J”);
System.out.flush();
}
尽管这并不能解决你原来的问题,但我还是想用这篇文章来指出回车的用法:
System.out.print(“这是一个测试字符串!”);
System.out.println(“\r此字符串将覆盖该字符串!”);
Java中用作\r
的回车符将光标放回行的开头。这将覆盖原始字符串。此代码的输出将为:
This string will overwrite that string!