java中字符串的一个问题 10
1个回答
展开全部
java的String是不能被修改的。
至于result=str.charAt(i)+result; 看上去好像result被修改了,实际上不是。
Java是怎么做的呢?
首先,在内存中创建了一个新的String,并且把这个String初始化为str.charAt(i)+result。
然后,把这个新的String的引用赋给了result,而result原来引用的那个String被当做垃圾回收了。
所以,最后你看到的效果好像是result被修改了,其实底层有更复杂一些的实现细节。
至于result=str.charAt(i)+result; 看上去好像result被修改了,实际上不是。
Java是怎么做的呢?
首先,在内存中创建了一个新的String,并且把这个String初始化为str.charAt(i)+result。
然后,把这个新的String的引用赋给了result,而result原来引用的那个String被当做垃圾回收了。
所以,最后你看到的效果好像是result被修改了,其实底层有更复杂一些的实现细节。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询