在Java编程过程中,我们常常会遇到比较基本类型或者对象之间的大小关系,下面我们来看看怎么去比较。源码如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
package object; class Value{ int i; } public class E08_StaticTest { public static void main(String[] args) { Integer n1= new Integer( 47 ); Integer n2= new Integer( 47 ); int n3= 12 ; int n4= 12 ; System.out.println(n1==n2); //比较的是对象的引用而非对象的内容 System.out.println(n1!=n2); System.out.println(n3==n4); System.out.println(n3!=n4); System.out.println(n1.equals(n2)); Value n5= new Value(); Value n6= new Value(); n5.i=n6.i= 67 ; System.out.println(n5.equals(n6)); //比较的是对象的引用而非对象的内容 } } |
输出结果:
1
2
3
4
5
6
|
false true true false true false |
在比较基本类型时,如int,double(n3,n4)等用==,!=比较两者之间的大小;但对new出来的对象(n1,n2)来说,必须使用equals()方法来比较两个对象之间的大小关系。
对于用户自己创建的类(n5,n6),比较大小关系时必须重载equals()方法,这是由于equals()方法的默认行为是比较引用,而非比较对象的内容。
大多数Java类库都实现了equals()方法,以便用来比较对象的内容,而非比较对象的引用。
总结
以上这篇文章就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。
原文链接:https://www.2cto.com/kf/201709/678425.html