码迷,mamicode.com
首页 > 编程语言 > 详细

java之关系运算符

时间:2017-03-22 16:50:49      阅读:162      评论:0      收藏:0      [点我收藏+]

标签:equals   java   

1.关系运算符生成的是一个“布尔”(Boolean)结果。它们评价的是运算对象值之间的关系。若关系是真实的,关系表达式会生成 true(真);若关系不真实,则生成false(假)。


   1. 检查对象是否相等(==或者!=)

Integer n1 = new Integer(47);
Integer n2 = new Integer(47);
System.out.println(n1 == n2);    //结果为false
System.out.println(n1 != n2);    //结果为true


因为==与!=都是比较对象的句柄,n1和n2尽管Integer对象相同,对象内容相同,但是句柄不同


2. equals()的使用
Integer n1 = new Integer(47);
Integer n2 = new Integer(47);
System.out.println(n1.equals(n2));    //ture
equals比较的是对象内容,所以为ture;
class Value {
int i;
}
public class EqualsMethod2 {
public static void main(String[] args) {
Value n1 = new Value();
Value n2 = new Value();
n1.i = n2.i = 10;
System.out.println(n1.equals(n2));   //false
}
}
此时的结果又变回了false!这是由于 equals()的默认行为是比较句柄。所以除非在自己的新类中改变了
equals(),否则不可能表现出我们希望的行为。

本文出自 “12380959” 博客,请务必保留此出处http://12390959.blog.51cto.com/12380959/1909179

java之关系运算符

标签:equals   java   

原文地址:http://12390959.blog.51cto.com/12380959/1909179

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