Java中==号与equals()方法的区别


String str1 = new String("abc");
String str2 = new String("abc");
System.out.println(s1.equals(s2));
System.out.println(s1 == s2);

根据上面所讲,第一个是true,第二个是false

String s1 = "abc";
String s2 = "abc";
System.out.println(s1.equals(s2));
System.out.println(s1 == s2);

这次的结果和上一个的是一样的吗?答案是:true true 

 

==号在比较基本数据类型时比较的是值,而用==号比较两个对象时比较的是两个对象的地址值:

Java提供的所有类中,绝大多数类都重写了equals()方法,重写后的equals()方法一般都是比较两个对象的值:


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM