子字符串的内存问题

时间:2015-01-22 12:34:58

标签: java string substring

substring方法如何在内部工作以及如何创建内存问题?

我们如何解决?

1 个答案:

答案 0 :(得分:1)

在Java 7 udate 6之前,substring曾用于在原始字符串上返回视图。所以想象你有一个1,000,000个字符的字符串,并且调用s.substring(0, 1),因为你只对第一个字符感兴趣,原始字符串将保留在内存中。

由于Java 7u6 substring返回一个新字符串来阻止该问题。