"=="和"equals"两种比较方法的区别

  1. 基本数据类型

    “==”两个变量的值是否相同,不比较地址

  2. 引用数据类型(类)

    • ”==”比较两个对象的引用,是否指向同一个内存空间;
    • “equals()”比较两个对象所指向的内存空间的值是否相同;

    例:

int i=10,j=i;
i==j;//比较两个变量的值是否相等
MyDate d2=d1;
d1==d2;//对象赋值,引用同一个实例,d1==d2?true
       //d1.equals(d2)返回true
MyDate d2=new MyDate(d1);//拷贝构造方法
//d1==d2?false,d1.equals(d2)返回true

猜你喜欢

转载自blog.csdn.net/lt_zl/article/details/69525906