Joe*_*oey 18
如果每毫秒对你来说都是宝贵的,那么你应该测量不要问.在任何情况下,我的猜测(再次:通过测量验证)replaceFirst()
会更快,因为它可以在第一次匹配后停止而不是搜索其他(在您的情况下不会存在).
您可能还想预编译正则表达式,因为这样可以节省您每次调用时的时间replaceFirst()
.或者寻找一种避免正则表达式的方法,如果它只是一个简单的字符串替换.
但我再次强调:使用分析器找出您花费最多时间的地方并优化该部分.过度优化一次只调用一次的语句并且只占总运行时间的0.07%而忽略它旁边的胖循环,占用运行时间的80%并不是非常有用.同样到目前为止,我的经验是,瓶颈往往是在最令人惊讶的地方,而不是你天真期待的地方.