String_字符串各个场景下的==

字符串在各个场景下的 ==

          备注: 当然正常情况下还是equals来处理是否相等,只是了解下

 

          代码见截图:

 

 

 执行结果:

 

 

个人理解: 

           1.  a 和 a1相等 ,是因为这两个变量都未在堆中生成实例,而是直接指向了方法区的运行常量池的 "helloworld" 元素,所以二者连地址值都是一样的

           2. String f = "hello"+"world" ; 其实是因为jvm的优化,编译器编译结束后,其实已经变成 String f = "helloworld" ,同上 ,返回true .

 

posted @ 2020-04-09 17:42  java_小跟班  阅读(270)  评论(0编辑  收藏  举报