我需要在循环中“缩短”一个字符串,然后再一次又一次地传递它以匹配java.regex.Pattern
. 对于一些深入参与解析和文本处理的人来说,这可能是一种微不足道的情况。
我面临着我必须使用的情况:
string=string.substring(shortenHowMuch); //Need to shorten it from the beginning
...低级开发人员非常清楚,即将整个字符串复制到内存的另一个地址。即使有 HotSpot 的优化(我知道),我仍然需要确保代码在所有可能的 Java VM 上以最大可能的性能变体运行。
编辑:
后来我发现,我上面的声明,它正在复制字符串,是错误的。所以我的问题应该“下地狱” :) 无论如何,如果你喜欢,请阅读 :).substring
不会复制,而是共享对 a 的引用char[]
,非常有趣:)