java - 双数组方法错误: Incompatible types: possible lossy conversion from double to int

标签 java arrays double

我正在尝试输入一个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 数组?

最佳答案

numbers 是一个 doublet 也应该是(根据您的代码,这将使 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;
}

关于java - 双数组方法错误: Incompatible types: possible lossy conversion from double to int,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34835250/

相关文章:

python - 如何为 DNA 序列生成一个热编码?

java - 将对象(double 类型)转换为 int

c - C 语言中 Double 变成 nan

java - 调用方法 JobRequest.Builder.schedule() 时出现 java.lang.IllegalStateException

java - Eclipse-ADT如何找到JDK路径

java - 在一个类中迭代 arraylist,同时在其他类中添加元素

c - 在 Sakamoto 算法中查找 t[] 数组来查找星期几

java - ArrayList 到 ArrayList<类型>

java - 通用编程和Java double

java - 最后阻止在 Oracle 的 JAVA 存储过程中不起作用