如何组合多个打印语句而不覆盖先前的print语句

时间:2015-09-03 16:01:10

标签: java printing override

我想编写一个代码,在该代码中在同一行上打印多个print语句而不覆盖前面的行。例如:

声明1:Hello“7spaces”World

声明2:java

声明3:Hello java World

我想通过组合语句1和2来实现语句3

EDIT1:我的问题可能含糊不清但不是......我无法正确传达.....基本上我想用两个打印语句在hello和world之间插入java

3 个答案:

答案 0 :(得分:0)

String spaces = "       ";
String one = "Hello       World";
String two = "java";
String three = one.replace(spaces," "+two+" ");

System.out.println(one);
System.out.println(two);
System.out.println(three);

问题非常模糊,所以我认为这就是你想要的。

我用“java”

替换了“Hello”和“World”之间的“”

答案 1 :(得分:0)

如果有帮助,您可以使用格式化打印..

System.out.printf("Hello %s World", "Java");

或使用正则表达式

String str1 = "Hello        World";
String str2 = "Java";
System.out.println(str1.replaceAll("[ ]{7,7}", " "+str2));

答案 2 :(得分:0)

您只需要6个空格。

System.out.print("Hello      World");
System.out.print("\b\b\b\b\b\b\b\b\b\bjava");

它在Eclipse控制台中不起作用,但在命令提示符下工作。

现在,由于您无法向前移动光标,只能向后移动,您可能需要将当前行保留在内存缓冲区中以用于更复杂的场景,并且只需重新打印整行。

在这种情况下,您可以使用\r返回到行的开头,然后在上打印现有文本。如果您的新文字较短,请务必使用空格填充以清除现有文字。