equals 和 == 的区别

1、 == 比较的是栈区的值,比较的是原始数据类型的值或者复合数据类型的地址

2、 equals方法比较的对象是复合数据类型,如果没有override equals 方法,那么比较的是两个对象的内存地址,如果重写了override 方法,那么使用新的逻辑。

3、 == 是一个运算符,而equals 是一个方法

下面是Object基类的equals方法:

1   public boolean equals(Object obj) {
2     return (this == obj);
3     }

 

posted @ 2016-05-25 15:15  fankongkong  阅读(159)  评论(0编辑  收藏  举报