首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

java中equals()方法和==比较解决思路

2012-04-17 
java中equals()方法和比较Object中的equals()方法默认是按地址比较,而不按内容进行比较。这和关系运算符“

java中equals()方法和==比较
Object中的equals()方法默认是按地址比较,而不按内容进行比较。
这和关系运算符“==”在进行对象比较时没有区别了,但是经常说==两边
对象是按地址在比较,而equals()是按内容在比较,这是怎么回事???


像String s1="回家了";
  String s2="回家了";
  s1.equals(s2),返回值是true
 而
 String s1=new String("回家了")
 String s2=new String("回家了")
 s1.equals(s2),返回值是false
这个有该怎么解释???

[解决办法]

Java code
package cn.test;public class StringEqualsTest {    public static void main(String[] args) {        String str1 = "回家了";        String str2 = "回家了";        String str3 = new String("回家了");        String str4 = new String("回家了");                System.out.println(str1.equals(str2));        System.out.println(str3.equals(str4));    }}运行结果:truetrue 

热点排行