工具类比较两个Integer是否相等

1.如果比较Integer A a; Integer B b; 我们通常如下比较:

if (null != a && null != b) {
    if(a.intValue() == b.intValue()) {
        // TODO
    }
}

2.有没有工具类,可以直接比较两个Integer的值的大小的?而不是上面这种臃肿的代码。

补充:java中,用最简单的代码实现比较两个Integer的值是否相等,有什么好的实现方式?

阅读 14.7k
2 个回答
 Integer num1 = 259;
 Integer num2 = null;
 System.out.println(org.apache.commons.lang.ObjectUtils.equals(num1, num2));

上述方法如果num1和num2都为null时,比较的结果为真。如果定义为比较结果为假,那还不知道是否有开源的第三方工具方法支持,或者说自己写一个方法就好了。在java中,null==null表达式的结果也是为真。

自定义方法:

  public static boolean compare(Integer num1,Integer num2){
        if(null == num1 || null == num2){
            return false;
        }
        
        return num1.equals(num2);
    }
   

参考:stackoverflow

a.equals(b)

但还是要判断null的问题

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题