Double array method error: Incompatible types: possible lossy conversion from double to int

Double array method error: Incompatible types: possible lossy conversion from double to int

我正在尝试输入 double 数组,但我在代码中收到一条错误消息

public static double getHighNumber(double[] numbers) {
    int a, b, t;

    for (a = 2; a < 11; a++) {
        for (b = 10; b + 1 >= a; b--) {
            if (numbers[b - 1] > numbers[b]) {
                t = numbers[b - 1];
                numbers[b - 1] = numbers[b];
                numbers[b] = t;
            }
        }
    }
    return numbers[10];
}

上线t = numbers[b-1];

如果我使用 int 数组而不是 double 数组,它可以正常编译和工作。我如何更改方法以使其接受 double 数组?

numbersdoublet 也应该是(根据您的代码,这将使 t = numbers[b-1]; 有效 ).像,

int a, b; // , t;
double t;

,如果你只想要最高的数字;那么你可以做类似

的事情
public static double getHighNumber(double[] numbers) {
    double h = numbers[0];
    for (int i = 1; i < numbers.length; i++) {
        h = Math.max(h, numbers[i]);
    }
    return h;
}