Java 如果条件为双重

Java 如果条件为双重,java,Java,我有以下代码: public static void main(String args[]) { double server = 2.11; double client = 2.8; if (server > client) { System.out.println("Upgrade"); } else { System.out.println("Not Upgrade"); } } 但它的回报是: Not Upg

我有以下代码:

public static void main(String args[]) {
    double server = 2.11;
    double client = 2.8;

    if (server > client) {
        System.out.println("Upgrade");
    } else {
        System.out.println("Not Upgrade");
    }
}
但它的回报是:

Not Upgrade

我不知道If条件和double数据类型发生了什么。有人吗?

上次我检查时,2.11小于2.8

考虑将版本2.8表示为2.08,或者更好地使用整数,例如:

int version = (major << 8) | minor;

对不起,我现在知道了


就像评论中的2.8是2.80>2.11

如果你想测试版本号,你不应该使用双倍…这个问题似乎离题了,因为它是关于2.11大于2.8+1的误解?伙计们。。说真的,问题应该结束了,我hope@Jason完全正确,我应该去睡觉。@KugathasanAbimaran这就是他应该得到的。。上次我检查时,2.11小于2.8。:DOoops,我在想2.08,抱歉伙计什么?这是一个答案吗?@devnull他是一个自学成才的人:回答自己的问题总是很好的,以防有人怀疑2.8是否大于2.11,并在将来找到这个帖子。@JasonC但有人可能仍然怀疑3.3是否大于3。42@MarounMaroun我是否应该提名重新开放这个网站,或许再加上一笔赏金。这个问题没有得到足够的重视。