Java How don';我的双重比较不起作用吗?

Java How don';我的双重比较不起作用吗?,java,double,Java,Double,这是我的代码: System.out.println(templist.indexOf(8.14)); if (ds > 8.1000 && ds<8.1500) { dot = templist.indexOf(8.14); dot++; System.out.println(dot); } System.out.pr

这是我的代码:

  System.out.println(templist.indexOf(8.14));
            if (ds > 8.1000 && ds<8.1500) {
                dot = templist.indexOf(8.14);
                dot++;
                System.out.println(dot);
            }
System.out.println(templast.indexOf(8.14));
如果(ds>8.1000&&ds

-1
0
如果indexOf()未能在列表中找到双精度值8.14,则可以解释

一个建议是进行以下诊断更改,以确保您看到的输出确实来自以下代码

System.out.println("Before if-test = " + templist.indexOf(8.14));
if (ds > 8.1000 && ds < 8.1500) {
    dot = templist.indexOf(8.14);
    dot++;
    System.out.println("Dot = " + dot);
}
可能返回了-1。这可以解释输出:

1
0
希望这有帮助。
谢谢!

什么是
ds
?你为什么期望一个
2
?对于(双ds:templist)我期望一个2,因为我做了dot++Hi@PeterWang,我在上面的回答中指出的2种可能性有助于解决你的问题吗?谢谢!
1
0