String字符串比较

String s1="hello";

String s2="hello";

String s3="hello"+"world";

 System.out.println(s1.equals(s2));//true

 System.out.println(s1==s2);  //true

 System.out.println(s1.equals(s3));//false

 System.out.println(s1==s3);//false


Object equals 比较的内存地址;相当于用==

String  equals比较的是内容

为什s1/s2属于两个对象 s1==s2返回true:s1赋值hello,当给s2赋值hello时会去堆里找有没有,如果没有就给他赋值,如果有hello就不会赋值而是把它当做s1对象来处理


String s1="hello";

String s2="hello";

String s3= new String("hello");

String s4= new String("hello");


 System.out.println(s1.equals(s2));//true

 System.out.println(s1.equals(s3));//true

 System.out.println(s1==s2);  //true

 System.out.println(s1==s3);//false

 System.out.println(s2==s3);//false

System.out.println(s4==s3);//false

只要是new出来的不管内容相不相同都在堆里开辟地址空间,因此System.out.println(s4==s3);//false


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值