0
点赞
收藏
分享

微信扫一扫

JVM优化之字符串池


JVM优化之字符串池

今天复习String的时候,看到String不可变的,于是经过了解后总结出的方案如下所示,如有疑问,欢迎留言。

String str1 = "aaa";
String str2 = "aaa";
System.out.println(str1 == str2);

结果是:true。

什么原因呢,JVM是如何运转的呢?

JVM首先会去字符串池中查找是否存在"aaa"这个对象,如果不存在,则在字符串池中创建"aaa"这个对象,
然后将池中"aaa"这个对象的引用地址返回给字符串常量str,这样str会指向池中"aaa"这个字符串对象;
如果存在,则不创建任何对象,直接将池中"aaa"这个对象的地址返回,赋给字符串常量。

后序还会将一些JVM其他的优化机制,欢迎关注!

如何解决了您的问题,还希望来JAVA WEB开发交流群:958923746,有问题欢迎共享,共同提升!

举报

相关推荐

0 条评论