在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