当前位置:七道奇文章资讯编程技术Java编程
日期:2011-03-22 16:17:00  来源:本站整理

java的关系运算符[Java编程]

赞助商链接



  本文“java的关系运算符[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
关系运算符生成的是一个“布尔”(Boolean)后果.它们评价的是运算对象值之间的关系.若关系是真实的,关系表达式会生成true(真);若关系不真实,则生成false(假).关系运算符包含小于(<)、大于(>)、小于或等于(<=)、大于或等于(>=)、等于(==)以及不等于(!=).等于和不等于实用于全部内建的数据范例,但其他对比不实用于boolean范例.

1. 查抄对象能否相等
关系运算符==和!=也实用于全部对象,但它们的含义普通会使初涉Java范畴的人找不到北.下面是一个例子:

//: Equivalence.java

public class Equivalence {
  public static void main(String[] args) {
    Integer n1 = new Integer(47);
    Integer n2 = new Integer(47);
    System.out.println(n1 == n2);
    System.out.println(n1 != n2);
  }
} ///:~

此中,表达式System.out.println(n1 == n2)可打印出内部的布尔对比后果.常人城市认为输出后果必定先是true,再是false,因为两个Integer对象都是相同的.但固然对象的内容相同,句柄倒是差别的,而==和!=对比的恰好就是对象句柄.所以输出后果实际上先是false,再是true.这自然会使第一次接触的人感到诧异.
若想比较两个对象的实际内容能否相同,又该若何操作呢?此时,必须利用全部对象都实用的特别办法equals().但这个办法不实用于“主范例”,那些范例直接利用==和!=便可.下面举例阐明若何利用:

//: EqualsMethod.java

public class EqualsMethod {
  public static void main(String[] args) {
    Integer n1 = new Integer(47);
    Integer n2 = new Integer(47);
    System.out.println(n1.equals(n2));
  }
} ///:~

正如我们预计的那样,此时得到的后果是true.但事情并未到此完毕!假定您成立了自己的类,就象下面这样:

//: EqualsMethod2.java

class Value {
  int i;
}

public class EqualsMethod2 {
  public static void main(String[] args) {
    Value v1 = new Value();
    Value v2 = new Value();
    v1.i = v2.i = 100;
    System.out.println(v1.equals(v2));
  }
} ///:~

此时的后果又变回了false!这是由于equals()的默许行为是对比句柄.所以除非在自己的新类中改变了equals(),不然不大概表现出我们但愿的行为.不幸的是,要到第7章才会学习若何改变行为.但要注意equals()的这种行为方法同时大概可以避免一些“灾难”性的事件.
大大都Java类库都实现了equals(),所以它实际对比的是对象的内容,而非它们的句柄.
  以上是“java的关系运算符[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
  • 利用Javascript实现网页水印(非图片水印)
  • Java开辟环境的搭建
  • Ubuntu java安装与配置
  • 办理Ubuntu 10.04 Firefox3.6 Java浏览器插件不工作的问
  • Ubuntu重装后Java环境的设置
  • Sun Java进入Ubuntu 10.10软件中央
  • Ubuntu 10.10配置Java开辟环境
  • 在Ubuntu 10.10中配置Java环境变量的办法
  • Ubuntu下Java环境的搭建
  • Ubuntu 10.04 下安装 Java, JRE
  • Ubuntu 10.04下的搭建SUN JAVA开辟环境
  • Ubuntu 12.04安装java7
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .