String str = "ab" +"cd";共创建几个对象

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_36336003/article/details/82820845

代码片段1:

String str1 = "ab";
String str2 = "ab";
//str1==str2 为true

代码片段2:

String str3 = new String("ab");
String str4 = new String("ab");
//str3==str4  为false

代码片段3:

String str5 = "ab"+"cd";
  • 代码片段1:
    String str1 = “ab”;在字符串常量池创建一个对象"ab",后面str2时直接引用该对象,不用再创建,共创建一个对象

  • 代码片段2:
    先在字符串常量池创建一个对象"ab",然后在堆空间创建两个对象,使str3和str4分别指向它们,共创建3个对象

  • 代码片段3:
    在字符串常量区创建3个对象,分别是"ab" ,“cd”,“abcd”

猜你喜欢

转载自blog.csdn.net/qq_36336003/article/details/82820845