5

假设我正在制作一个命令行界面。我想打印一个字符串,然后更改它。例如,当您运行程序时,它会打印出

Hello, World!

但是,几秒钟后,消息变为:

Hello, Computer User!

这可能吗?跨操作系统会更好。

4

2 回答 2

5

您可以回显\b转义序列,即退格,然后写出一条新消息来代替旧消息。

请注意,这可能不是完全跨平台的,因为它取决于控制台本身以及它如何解释\b,但它应该主要工作。

于 2013-03-07T06:21:27.600 回答
3

尝试

    String s1 = "Hello, word!";
    System.out.print(s1);
    Thread.sleep(1000);
    for(int i = 0; i < s1.length(); i++) {
        System.out.print('\b');
    }
    System.out.print("Hello, computer user");

请注意,它不适用于 Eclipse,请从命令行运行它

于 2013-03-07T06:42:17.753 回答