有人能解释第一个地方需要什么字符串池吗?有什么好处。为什么字符串存储在Java中的字符串池?
-2
A
回答
0
池是可能的,因为字符串是不可变的。但是String的不变性只是因为这个池而决定的。不变性有许多其他好处。顺便说一句,Double也是不可改变的,并且没有Double池。
对字符串池的需求是为了减少保存程序使用的所有字符串文本(和字符串字符串)所需的内存,因为这些字符很有可能被多次使用,在许多地方程序。而不是有相同的字符串文字的成千上万的副本,你只需要对同一个字符串进行千次引用,这减少了内存使用量。
请注意,String类与其他类没有区别:它拥有自己的char数组。不过,它也可能会与其他String实例共享,当调用子字符串时。
+0
谢谢你,这是我想知道的。对不起,不能upvote因为我刚刚加入该网站,学分低。 – 2014-09-22 06:56:30
相关问题
- 1. 什么是Java中的字符串池?
- 2. 存储在字符串池中唯一字符串lliterals?
- 3. 在字符串中存储字符串
- 4. 为什么使用new运算符创建的字符串在字符串池中创建字符串literal
- 5. 在字符串内存储字符串?
- 6. 为什么数字+字符串在JavaScript中的字符串?
- 7. 为什么我可以在字符的内存地址中存储字符串?
- 8. 为什么Kotlin的字符串插值在Java中串联字符串?
- 9. 在kdb中存储一个字符串作为字符串
- 10. 存储字符串值在Java中
- 11. Java:在Trie中存储子字符串
- 12. 存储XML为字符串
- 13. LINQ - 存储为字符串
- 14. 为什么字符串在java中以空字符结尾?
- 15. 为什么不在相应的数组中存储字符串?
- 16. JAVA - 存储字符串和字符串的数量
- 17. 字符串池(字符串和StringBuffer)
- 18. Java的字符串文字池
- 19. 存储字符串
- 20. 存储字符串
- 21. 存储字符串
- 22. 字符串池行为
- 23. 将字符串的地址存储在字符串数组中
- 24. 字符串的子串和存储在字符中
- 25. java字符串池中的内容
- 26. 为什么F()宏(将字符串存储在.text中)编译?
- 27. 为什么“\”在PHP中将字符串存储时出错?
- 28. 将字节值存储在字符串中?将字节转换为字符串?
- 29. java在字符数组中存储字符串
- 30. JQuery.each将字符串文字转换为字符串。为什么?
你会付出一些努力来创造它们。如果你要再次使用它们(假设你将再次需要它们),将它们扔掉是没有意义的。 – TheLostMind 2014-09-19 12:11:39
一个很好的答案在这里:http://stackoverflow.com/questions/3801343/what-is-string-pool-in-java – Daniel 2014-09-19 12:12:55