直接给字符串赋值和new的区别

两种赋值方式

常量字符串的存储有一个字符串常量池,系统会开辟一块空间给常量字符串。

字面量赋值:系统会把常量字符串的地址给予栈区的变量。

new赋值:系统会开辟一块堆空间并把地址值给予栈区的变量,堆区存储的是字符串常量池中字符串对应的常量。


内存反应

//注意:

字符串如果是变量相加,先开空间,后相加。

字符串如果是常量相加,是先相加,然后在常量池找,如果有就直接返回,否则,就创建。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容