码迷,mamicode.com
首页 > 其他好文 > 详细

== 与 equals()方法的区别

时间:2017-07-28 23:52:11      阅读:181      评论:0      收藏:0      [点我收藏+]

标签:[]   tar   邮箱   定义   false   数据   obj   date   har   

* equals()方法的使用
*
* 1.java.lang.Object类中的equals()方法的定义:
*
* public boolean equals(Object obj) {
return (this == obj);
}
*
* 说明:Object类中equals()比较两个对象的引用地址是否相同。(或:比较两个引用是否指向同一个对象实体)
*
* 2. 像String、Date、File、包装类等重写了Object类中的equals()方法,比较两个对象中的实体内容是否相等。
*
* 3. 对于自定义类来讲,如果没重写Object类中的equals()方法,调用equals()方法时,仍然比较两个对象的引用地址
* 是否相同。
*
* 4. 一般情况下,在开发中一旦调用了自定义类的equals(),通常都是重写以后的equals()方法。
*
* 5.重写equals()的规则:比较两个对象的属性是否都相等。
*
*
* 面试题:== 和 equals() 区别?
*
* ==:使用范围:可以操作基本数据类型 和 引用数据类型
* 如果操作的是基本数据类型:比较两个基本数据类型的变量对应的值是否相等。
* 如果操作的是引用数据类型:比较两个引用的地址是否相同。
*
*
* equals():使用范围:只适用于引用数据类型
* 具体的使用:见上面的1-5
*
*
*
* @author shkstart 邮箱:shkstart@126.com
* @version 创建时间:2017年7月26日 下午2:18:41
*
*/
public class EqualsTest {
public static void main(String[] args) {
String str1 = new String("atguigu");
String str2 = new String("atguigu");

System.out.println(str1 == str2);//false

System.out.println(str1.equals(str2));//true

Date date1 = new Date(12141412L);
Date date2 = new Date(12141412L);

System.out.println(date1.equals(date2));//true


Customer c1 = new Customer("Tom", 12);
Customer c2 = new Customer("Tom", 12);

System.out.println(c1.equals(c2));//false--->true

System.out.println(c1 == c2);//false

int[] arr1 = new int[]{1,2,3};
int[] arr2 = new int[]{1,2,3};
System.out.println(arr1.equals(arr2));
System.out.println(arr1.equals(arr1));

System.out.println("*************************");

// ==
int num1 = 10;
int num2 = 10;
System.out.println(num1 == num2);//true
double d1 = 10.0;
System.out.println(num1 == d1);//true

char c = 10;
System.out.println(num1 == c);//true

char cc = ‘A‘;
int num = 65;
System.out.println(cc == num);//true

// System.out.println(true == num);//编译不通过

// System.out.println("hello" == new java.util.Date()); //编译不通过


}
}

== 与 equals()方法的区别

标签:[]   tar   邮箱   定义   false   数据   obj   date   har   

原文地址:http://www.cnblogs.com/loushiqiang/p/7252924.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!