我正在对流行游戏(Minecraft)进行修改,并且在地形生成中看到了这些线条,
double d4 = 1.0D;
d4 *= d4;
d4 *= d4;
d4 = 1.0D - d4;
double d5 = (noise1[l1] + 256D) / 512D;
d5 *= d4;
我想知道
d4
的意义是什么,因为在第四行它将始终为0,不是吗? 最佳答案
是的,在纯Java中,至少可以保证该值为0。
对于浮点二进制算术的所有不准确性,都可以精确地表示1.0本身,并且将其自身相乘的结果总是简单地回到1.0。
您确定其他地方没有其他事情使其与1.0d略有不同吗?还是历史上它不是0.1的某个值?