gpt4 book ai didi

java - 加或减 double 会给出错误的结果

转载 作者:行者123 更新时间:2023-12-01 10:59:15 25 4
gpt4 key购买 nike

if (CIElchOpposite[2] < 180.0) {
CIElchOpposite[2] = CIElchOpposite[2] + 180;
} else {
CIElchOpposite[2] = CIElchOpposite[2] - 180;
}

对于给定的CIElchOpposite[2] = 82;返回结果为180什么时候应该是262

CIELchOppositedouble []

应该很简单,但无论如何操作都没有正确完成。
这是整个方法,将 CIELab 颜色映射到 CIELch 空间,计算相反的颜色(仅加或减 180°),然后将其转换回 CIELab。该映射已经过独立检查并且工作正常。

double CIElch[] = MapFromCIElabtoCIElch
.mapLabToLch(inputColorOneCIELAB);
double CIElchOpposite[] = new double[3];
CIElchOpposite[0] = CIElch[0];
CIElchOpposite[1] = CIElch[1];

if (CIElchOpposite[2] < 180.0) {
CIElchOpposite[2] = CIElchOpposite[2] + 180;
} else {
CIElchOpposite[2] = CIElchOpposite[2] - 180;
}

double[] CIElabOpposite = new double[3];
CIElabOpposite = MapFromCIElabtoCIElch.mapLchToLab(CIElchOpposite);

最佳答案

CIElchOpposite[2] 在 if 语句之前从未分配任何值

也许你的意思是

if (CIElch[2] < 180.0) {
CIElchOpposite[2] = CIElch[2] + 180;
} else {
CIElchOpposite[2] = CIElch[2] - 180;
}

注意 Java 使用驼峰命名法,例如 cielchOppositecieLch

关于java - 加或减 double 会给出错误的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33451559/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com