Java中的关系操作符

来源:互联网 发布:人工智能领域 编辑:程序博客网 时间:2024/06/05 03:47

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));//比较的是对象的引用而非对象的内容}} /* Output:falsetruetruefalsetruefalse*///:~

在比较基本类型时,如int,double(n3,n4)等用==,!=比较两者之间的大小;但对 new出来的对象(n1,n2)来说,必须使用equals()方法来比较两个对象之间的大小关系。

对于用户自己创建的类(n5,n6),比较大小关系时必须重载equals()方法,这是由于equals()方法的默认行为是比较引用,而非比较对象的内容。

大多数Java类库都实现了equals()方法,以便用来比较对象的内容,而非比较对象的引用。

 

原创粉丝点击