美文网首页
Integer类明明相等的值为什么却不相等

Integer类明明相等的值为什么却不相等

作者: 噜智深 | 来源:发表于2019-03-24 17:00 被阅读0次

    Integer类对象的值在-127 ~ 128 之间时,可以用==比较,超出这个范围则只能使用equals()

    Integer a = -100;
    Integer b = -100;
    Integer c = 130;
    Integer d = 130;
    
    a == b //true
    c == d //false
    c.equals(d) //true
    

    或者使用intValue()方法转换成基本数据类型再用==进行比较亦可。

    c.intValue() == d.intValue() //true
    

    由此可以得出,其他包装类,如DoubleLong也遵循这样的规则。

    相关文章

      网友评论

          本文标题:Integer类明明相等的值为什么却不相等

          本文链接:https://www.haomeiwen.com/subject/unbuvqtx.html