我有一个带有2个双参数的方法: 1.我要检查的值 2.我要检查的值是0.99或1.0,但不是固定值, 返回值为2。
预期结果是:如果1小于或等于0.99,则表示是良好;但是,如果1大于或等于1.0,则表示是差
static Double check (Double var1, Double var2) {
Double obj= 0.0;
if (var1 >= var2)
obj = var2;
else if (var1 <= var2)
obj = var2;
return obj; }
var1两次输入相同的值,但var2是一次更改的值, 问题在于,如果值小于0.99(例如0.5),则始终小于1.0;如果值大于1.0,则始终大于0.99,则会给我两个结果
答案 0 :(得分:0)
当您确定地说var2是0.99或1.0时,您可以像这样正确地进行检查:
static boolean check (Double var1) {
return !(var1 >= 1.0);
}
答案 1 :(得分:-1)
该代码可以为您提供帮助:
static Object check (Double var1, Double var2) {
Object obj=new Object();
if (var1 >= var2) {
obj = var1;
return obj;
}
else {
obj = var2;
return obj;
}
}
答案 2 :(得分:-1)
为什么-为什么要尝试使用return false
(返回)方法Object
?区分大小写。无论哪种方式,在if
和else
语句中,您都返回相同的值。
static double check (Double var1, Double var2) { // You are returning doubles. Not objects.
double obj;
if (var1 >= var2) {
obj = var1; // not var2, otherwise the else-if statement would be the exact same
return obj;
}
else if (var1 < var2) {
obj = var2;
return obj;
}
else
return false; // Throws error, I don't know what you want to do with this.
}
别忘了Java是区分大小写的。