9
为什么在字符串后附加“”会节省内存?
我说了一个变量,里面有很多数据String data。我想通过以下方式使用此字符串的一小部分: this.smallpart = data.substring(12,18); 经过数小时的调试(使用内存可视化器),我发现objects字段smallpart记住了的所有数据data,尽管它仅包含子字符串。 当我将代码更改为: this.smallpart = data.substring(12,18)+""; ..问题解决了!现在我的应用程序现在只占用很少的内存! 那怎么可能?谁能解释一下?我认为this.smallpart一直在引用数据,但是为什么呢? 更新:那 我怎么清除大字符串?data = new String(data.substring(0,100))会做这件事吗?
193
java
performance
string
memory