Java 差异方法

标签 java methods

我正在尝试创建一种方法来检查某些 Y 坐标的第一个差异,如果第一个差异相同,它将采用这些差异并检查第二个差异,并且我想继续检查,直到我的变量是平等的。我的问题是检查差异数组中的相等性

public static double[] Difference(double ardY[]) {
    double ardDifference[] = new double[5];
    for (int j = 0; j < 5; j++) {
        ardDifference[j] = ardY[j + 1] - ardY[j];
        while (ardDifference[j] != ardDifference[j]) {
            for (int i = 0; i < 4; i++) {
                ardDifference[i] = ardY[i + 1] - ardY[i];
                if (ardDifference[j] == ardDifference[i]) {
                    return ardDifference;
                    break;
                }
            }
        }
    }
    return ardDifference;
}

最佳答案

我不太确定你在这里想做什么,但是如果你想计算差异直到得到一组全部相等的差异,那么你可以使用递归很容易地做到这一点:

public static double[] Difference(double ardY[]) {
    double ardDifference[] = new double[ardY.length - 1];

    boolean allEqual = true;
    double prev;
    for (int j = 0; j < ardDifference.length; j++) {
        ardDifference[j] = ardY[j + 1] - ardY[j];
        if (j != 0) {
            allEqual &= prev == ardDifference[j];
        }
        prev = ardDifference[j];
    }

    if (allEqual) {
        return ardDifference;
    } else {
        return Difference(ardDifference);
    }
}

关于Java 差异方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19116615/

相关文章:

java - 用户可拖动的编辑文本

java - 线程化数据集?

java - Vaadin 网格 ID

java - 为什么这个 toast 在不应该出现的时候出现了?

java - 这种方法有什么问题 - (在 Jlist 中添加元素)?

java - IntelliJ 2018.3 中未显示选项 "Tag (JUnit 5)"

java - 当给 NamedParameterJdbcOperation 获取日期作为参数时,JDBC 查询不起作用(在参数映射中)

c# - 在 C# 中实现接口(interface)的通用方法时出现奇怪的错误。这里到底出了什么问题?

objective-c - 如何找出谁是方法或函数的调用者?

c# 将方法作为参数传递给方法