gpt4 book ai didi

java - 比较数组中的 double 值并返回索引号

转载 作者:行者123 更新时间:2023-12-01 23:54:45 25 4
gpt4 key购买 nike

public int index(double dest){
int index = 0;
for(int i=0; i<coords.length; i++){
if((dest-coords[i])<1 && (dest-coords[i])>-1){
index = i;
}
}
return index;
}

基本上,我有一个 double 组“坐标”。我想写一个方法index(double dest),它输入一个double,找到数组中哪个索引包含这个double并返回索引整数。

在测试时,我 100% 确定我的输入 double 值存在于数组中并且在数值上相等。但是,当我运行该方法时,它总是返回 0,或者声明 int index 的值,看起来 for 循环根本没有运行。

谢谢!

最佳答案

由于 float (float、double)的表示,基本上您不应该在不使用增量的情况下比较它们,或者请使用 BigDecimal 并从数字的字符串表示构造这些类的实例。

double number1 = 0.11234;
double number2 = 0.11234;
double delta = 0.01;
boolean areEqual = Math.abs(number1 - number2) <= delta;

关于java - 比较数组中的 double 值并返回索引号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15772786/

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