比较运算符问题

Ank*_*tal 1 java math

嗨我在java中面临一个我无法调试的问题.

我设置了一个双变量

double minMean = (Double.MIN_VALUE);
Run Code Online (Sandbox Code Playgroud)

我有另一个双变量

double mean = -5000;
Run Code Online (Sandbox Code Playgroud)

当我尝试以下条件时

  if( mean>minMean)
             print mean
Run Code Online (Sandbox Code Playgroud)

"打印平均值"行未执行.任何指针为什么这不起作用,

Roh*_*ain 6

Double.MIN_VALUE是最小正值.最小有限负值只是前面Double.MAX_VALUE-符号:

double minMean = -Double.MAX_VALUE;
Run Code Online (Sandbox Code Playgroud)

IEEE 754浮点数将MSB位保留为符号位.因此,您的正数与负数相同.您只需要翻转符号位即可获得负值.