java给定两个变量,测试它们之间是否有其他变量
我想测试一个变量是否介于两个其他变量之间,如果不清楚,请查看我的代码。这段代码是有效的,我只是在寻找一种更短、更高效的方法来执行同样的事情
public boolean isBetween(double test, double n1, double n2){
double lowN = n1 < n2 ? n1 : n2;
double highN = n1 > n2 ? n1 : n2;
if(n1 == n2 && test == n1){
return true;
}
if(test >= lowN && test <= highN){
return true;
}
return false;
}
目前,我使用两个三元运算符来定义哪个变量较低,哪个变量较高,然后查看测试变量是否在它们之间
# 1 楼答案
替代解决方案:
也就是说,我实际上更喜欢另一种更个人化、更具可读性的解决方案;指数学的运用。min()和数学。最大值()
# 2 楼答案
这部分甚至不需要。如果没有它,它也应该工作
也使用数学。min()和数学。max()本质上提供了与代码相同的效率。如果您想使代码简短或看起来更可读,可以使用它们
# 3 楼答案
您可以使用^{} 和^{} :