假设我有一个函数,它接受一个字符串参数,例如
func("abc")
“abc”
会被保留(存储在字符串池中)吗?如果func("abc")
被调用十亿次,java会在池中创建十亿个“abc”字符串对象副本吗?
最佳答案
没有。在字符串池中,只会创建一个副本,并且所有具有相同字符串值的变量都将指向该副本。
为了更清楚,您可以查看下图:
https://cdn.journaldev.com/wp-content/uploads/2012/11/String-Pool-Java1.png
关于java - Java中未分配给变量的字符串文字会导致内存泄漏吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60556063/