==比较的是地址的大小.而equals比较的是值的大小

解决方案 »

  1.   

    equals比较值,只能是引用类型,==比较对象当两个相同的对象其值相等时,equals为真,但是==为假
    当是同一个对象是==和equals都为真
      

  2.   

    ==是比较两个东西是否是同一个。primitive的数据类型直接比较其值,其它数据类型或对象比较其在内存中的地址来判断是否同一个东西。
    equals是类里面定义的方法,可以重载,至于要比较什么东西就由equals方法的逻辑来实现。
    如果Object的子类没有重载equals方法,会一直调用到Object类的equals方法,而实际上,这个时候跟==没有区别。