我的问题是针对同一个 String 对象多次调用 split 或其他 String 方法的情况。
是否有任何流行的 JVM 实现通过将结果存储在内存中以供以后重用来优化此类调用?
它可以这样工作:由于字符串不可变的性质和字符串池的存在,一个表达式
String resource = "A:B:C";
String[] resourceArr = resource.split(":");
每次使用时都会对“A:B:C”和“:”使用相同的字符串对象引用。JVM 可以使用这些引用匹配存储的结果,并在不执行实际解析的情况下提供它。