当前位置: 代码迷 >> J2SE >> "a"代表一个匿名String对象,那末new StringBuilder("a")是不是产生了两个对象
  详细解决方案

"a"代表一个匿名String对象,那末new StringBuilder("a")是不是产生了两个对象

热度:424   发布时间:2016-04-24 12:23:10.0
"a"代表一个匿名String对象,那么new StringBuilder("a")是不是产生了两个对象?
--

------解决方案--------------------
是两个对象,"a"一个,new StringBuilder()一个
------解决方案--------------------
产生两个对象
首在String池中找 是否 有 a 对象 , 有则不创建,没有则创建 一个a 对象在String池中
又有一个new 所以在内存上又创建一个a对象
所以共两个对象
------解决方案--------------------
String a = new String("a");
第一个a在栈中,new String("a")中的a生成在堆中
栈中的a会指向在堆中的a
所以说有两个对象
  相关解决方案