if (a > 0) { } if (Objects.compare(a, 0L, Long::compareTo) > 0) { } Exception in thread "main" java.lang.NullPointerException 上面这样写如果 a 是 null 就都会报错 一般写法是这样可以避免 if (a != null && a > 0) { } ··· 但我实在不想每次遇到都写一遍判空逻辑 null 和 0 本来就不相等,为啥还要报错 我想找一个 JDK 封装的方法去解决,但没找到 null, jdk, 封装, compareto
``` Comparator comparator = Comparator.nullsFirst(Long::compareTo); if (comparator.compare(null, 0L) > 0) { ``` chat gpt 的答案