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
数组?
numbers
是 double
,t
也应该是(根据您的代码,这将使 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;
}
我正在尝试输入 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
是 double
,t
也应该是(根据您的代码,这将使 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;
}