在 Java 中动态缩进字符串的快速方法

Fast way to dynamically indent strings in Java

我有一个列表,其中每一行的文字如下:

STARTTIMING: main
| STARTTIMING: loop
| | STARTTIMING: doSomeStuff()
| | STOPTIMING: doSomeStuff() 1ms
| | STARTTIMING: doSomeStuff()
| | STOPTIMING: doSomeStuff() 1ms
| STOPTIMING: loop 5ms
STOPTIMING: main 5ms

我知道如何使用 "brute force" 对其进行格式化,但是一旦它是用于测量性能的应用程序,以上面显示的格式打印字符串的快速方法是什么(正确缩进,并垂直插入条) 在 Java?

现代 JVM 为您优化了字符串连接。除非你正在做一些非常痛苦的事情,否则我不会费心去智取它。我不知道你是不是因为你没有 post 你的实际代码。

这里有一点帮助

indentString = new String(new char[indentCount]).replace("[=10=]", "|");

我从 here

偷来的

此外,如果您想说您担心连接所花费的时间,因为它是时间测量代码的一部分,那么为了 Peat 的缘故,请在进行任何连接或其他任何操作之前测量时间差。