Java Long Compare和ValueOf方法未定义

时间:2017-09-18 00:46:52

标签: java long-integer comparator

我正在引用我的Java版本JDK 1.8,但我仍然收到错误。这个引用有什么问题(6年后编写Java)?或任何其他更简单的方法来做到这一点?我做了一些搜索,这些函数在以后的java版本中可用。 Eclipse是figure.right > h3 { position: absolute; right: 0; text-align: left }

  

对于Long

类型,方法valueOf(Long)未定义      

对于Long

类型,方法compareTo()未定义
Oxygen

和JDK指向

/Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk/Contents/Home

enter image description here

2 个答案:

答案 0 :(得分:4)

您对MyComparator的声明声明了一般类型的名称Long,然后是阴影 java.lang.Long。你的班级不应该是通用的。此外,您不需要Long.valueOf,因为您已经有Long个实例。更改它以删除通用,例如

public class MyComparator implements Comparator<Long> {
    @Override
    public int compare(Long long1, Long long2) {
        return long1.compareTo(long2);
    }
}

答案 1 :(得分:2)

或者,只要您需要Comparator<Long>或任何其他class实施Comparable,您就可以致电:

Comparator.naturalOrder()

https://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html#naturalOrder--