java中“==”与equals区别
来源:互联网 发布:守望先锋看数据 编辑:程序博客网 时间:2024/06/08 19:30
(1)= =操作符:
第一种情形:比较两个变量的值是否相等。
int a = 5; int b = 5; System.out.println(a==b);//true
第二种情形:比较两个变量是否指向同一个对象。
int[] a = new int[3]; int[] b = new int[3]; System.out.println(a==b); //false System.out.println(a.equals(b));//false
(2)equals方法:
第一种情形:比较引用。 equals默认行为时比较引用,如果不覆盖(即重写)equals方法,此时在比较对性引用时,equals与= =等价。比较规则:当参数obj引用的对象与当前对象为同一对象时,就返回true,否则返回false。
A a = new A(); A b = new A(); System.out.println(a==b); //false System.out.println(a.equals(b));//false
第二种情形:比较内容,也即值。当在新类中覆盖object类的equals中的方法时,比较规则:如果对象类型一致,并且内容一致,则返回true。这些类型有:java.io.file, jave.util.Date, java.lang.string, 包装类(Integer,Double等)。重写equals方法要满足离散数学特性:自反性,对称性,传递性,一致性,非空性。
覆盖了equals方法实例:
Integer a = new Integer(0); Integer b = new Integer(0); System.out.println(a==b); //false System.out.println(a.equals(b));//true
- java中“==”与equals区别
- java中equals与==区别
- Java中"equals()"与"=="区别
- Java中equals()与==区别
- Java中equals与==区别
- java中“==” 与 equals 区别
- 【java中==与equals的区别】java中==与equals的区别
- java中equals与==的区别
- java中equals() 与==的区别
- java中“==”与“equals”的区别
- java中“==”与“equals”的区别
- Java中==与equals的区别
- java中equals与==的区别
- java中equals与==的区别
- Java中== 与 equals的区别
- java中== 与equals的区别
- java中==与equals的区别
- java中==与equals的区别
- 软件生成CAN总线,RS422,ARINC429总线物理波形。
- 大小端
- 如何设计一个好的J2EE开发框架
- 新java十大低级错误
- valgrind 简单使用
- java中“==”与equals区别
- 基于Altera Quartus II的模块化设计应用
- extjs4 [store异常处理] [加载信息提示]
- 入门视频采集与处理(视频分辨率介绍)
- mabaoo
- windows编程-格式化输出
- 冒泡排序
- 对基于intel CPU的服务器架构相关各种技术比较全面的介绍
- 关于ARM的22个常用概念--的确经典