如何比较两个"可比较"在Java中输入变量?

时间:2014-03-30 11:13:30

标签: java comparator comparable

我目前正在从事大学任务。我有一段代码如下所示。

if(temporary > left) { }

临时变量和左变量都是“可比较”类型。我的问题是,我如何比较这两个?它们总是保存整数值,但赋值会强制我将它们声明为“可比较”类型。

任何帮助都非常感谢,因为我对此很困惑。谢谢!

3 个答案:

答案 0 :(得分:2)

如果查看http://docs.oracle.com/javase/7/docs/api/java/lang/Comparable.html,您就会知道compareTo()方法就是您所需要的。

您可以使用temporary.compareTo(left)并使用该值与0进行比较。

在临时compareTo()中实施temporary.compareTo(left),使其返回负整数,零或正整数,因为临时小于,等于或大于左。

答案 1 :(得分:0)

在Java中,接口只能声明方法。 Comparable接口声明了compareTo方法。所以:

temporary.compareTo(left)

答案 2 :(得分:0)

以下面的课程为例:

public class Boot implements Comparable<Boot> {

    int size;

    public Boot(int size) {
        this.size = size;
    }

    public int getSize() {
        return size;
    }

    @Override
    public int compareTo(Boot boot) {
        if (boot.getSize() > size) {
            return -1;
        } else if (boot.size == size){
            return 0;
        } else {
            return 1;
        }
    }

}