首页 > 编程语言 > 详细

关于java字符串拼接时jvm的处理

时间:2019-03-23 12:10:34      阅读:146      评论:0      收藏:0      [点我收藏+]

在java语言中,字符串的拼接方式可以是String c=”a”+”b”,也可以是String a=”a”,String b=”b”,String c=a+b,两种拼接方式是不一样的,前者是在编译期就可以确定的值,两个字符串常量组成的也是字符串常量,它会在常量池里面生成三个字符串常量,存在jvm的常量池里,后者在编译器无法确定,是在运行时才能确定,保存在jvm的堆里面,后者在拼接的时候,先在常量池里面生成两个字符串,在执行加号的时候,会从常量池中取出两个常量,在堆中生成两个字符串对象,然后再生成第三个字符串对象来保存两个对象拼接后的值,所以后者一共是两个常量,三个对象。

关于java字符串拼接时jvm的处理

原文:https://www.cnblogs.com/st-client/p/10583125.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!