String对象的创建与比较
作者:xyaydddf的博客 发布时间:[ 2016/10/18 9:59:13 ] 推荐标签:String Java
对象的创建方式
1、new创建
堆;至少创建一个对象,也可能两个(当创建一个对象时,会在堆上创建一个对象,对应的指针放在栈内存上。同时,如果该值在对应的内存池里在存在,那么会在该池再创建一个对象)。
2、类名创建
栈;可能创建一个对象,或者不创建对象(当创建一个对象时,如果栈上该值存在,那么会直接引用,否则会创建)。
String str1 = new String("ABC");
String str2 = new String("ABC");
System.out.println(str1 == str2); // 比较对象的指针,false
System.out.println(str1.equals(str2));// 比较对象的值,true
String str3 = "ABC";
String str4 = "ABC";
String str5 = "AB" + "C";
System.out.println(str3 == str4);// 比较常量的引用,true
System.out.println(str3 == str5);// 编译时,已经将str5的值转化为:“ABC”,true
System.out.println(str1 == str3);// false
System.out.println(str1.equals(str3));// 比较对象的值,true
String str6 = "AB";
String str7 = str6 + "C";// 实际上是新创建了一个对象,然后在把新创建对象的引用传给str7
System.out.println(str7 == str3); // false
相关推荐
更新发布
功能测试和接口测试的区别
2023/3/23 14:23:39如何写好测试用例文档
2023/3/22 16:17:39常用的选择回归测试的方式有哪些?
2022/6/14 16:14:27测试流程中需要重点把关几个过程?
2021/10/18 15:37:44性能测试的七种方法
2021/9/17 15:19:29全链路压测优化思路
2021/9/14 15:42:25性能测试流程浅谈
2021/5/28 17:25:47常见的APP性能测试指标
2021/5/8 17:01:11