子字符串的内存问题
Memory issues with substring
substring
方法如何在内部工作以及它如何产生内存问题?
如何解决?
在 Java 7 更新 6 之前,substring
用于 return 对原始字符串的 查看 。假设您有一个包含 1,000,000 个字符的字符串并调用 s.substring(0, 1)
因为您只对第一个字符感兴趣,原始字符串会保留在内存中。
因为 Java 7u6 substring
returns 一个新的字符串可以防止这个问题。
substring
方法如何在内部工作以及它如何产生内存问题?
如何解决?
在 Java 7 更新 6 之前,substring
用于 return 对原始字符串的 查看 。假设您有一个包含 1,000,000 个字符的字符串并调用 s.substring(0, 1)
因为您只对第一个字符感兴趣,原始字符串会保留在内存中。
因为 Java 7u6 substring
returns 一个新的字符串可以防止这个问题。