【笔记】将字符串放入串池
前言
将字符串放入串池学习笔记
字符串常量
- new出来的字符串,编译器将自动将其放入串池
1 | String s = ""; |
1 | String s = new String(""); |
将堆中的字符串放入串池
- 通过运算符得到的新字符串,编译器将自动将其放入堆中
- 如果程序中使用了大量的重复字符串,可以通过将堆中的字符串放入串池,节省堆内存的使用,从而实现JVM调优
- 可以通过
intern()
方法可以尝试将堆中的字符串放入串池,并返回串池中的对象- 如果已存在则不会再次放入串池
- JDK1.8及之后,如果不存在则立即将堆中的字符串放入串池
- JDK1.8之前,如果不存在则立即将堆中的字符串复制一份,将副本放入串池
1 | String s = new String("") + new String(""); |