我需要做一个转换表,主要是说如果变量1在这个范围内,变量2在这个范围内,那么变量3=x。我在PHP中做过这个工作,但是对于我现在的项目来说,PHP不能工作。有没有其他直接的方法可以通过Java或其他东西来实现?如果有人能给我指引正确的方向,那就太好了。
这里是一个PHP版本的工作片段。
if(in_array($Var1, range(-10,-1))){
if(in_array($Var2, range(0,1049))){
$var3 = "8";
}
if(in_array($Var2, range(1050,1149))){
$var3 = "9";
}
if(in_array($Var2, range(1150,1249))){
$var3 = "9";
}
if(in_array($Var2, range(1250,1349))){
$var3 = "10";
}
if(in_array($Var2, range(1350,1449))){
$var3 = "11";
}
if(in_array($Var2, range(1450,1550))){
$var3 = "12";
}
}
if(in_array($cwr, range(-20,-11))){
if(in_array($Var2, range(0,1049))){
$var3 = "9";
}
if(in_array($Var2, range(1050,1149))){
$var3 = "9";
}
if(in_array($Var2, range(1150,1249))){
$var3 = "10";
}
if(in_array($Var2, range(1250,1349))){
$var3 = "11";
}
if(in_array($Var2, range(1350,1449))){
$var3 = "12";
}
if(in_array($Var2, range(1450,1550))){
$var3 = "13";
}
}
如上所述,有一个更有效的方法来实现这个功能。与其每次用range()创建一个新的数组,我们可以简单地测试变量是否在两个范围内。
比如说
x = 12;
if(5 <= x && x <= 15){
System.out.println("x in range");
}
将打印 "x在范围内",因为12既大于5又小于15。按照上面用户的描述,你可以把这个变成一个函数。
boolean inRange(int x, int lower, int upper){
return (lower <= x && x <= upper);
}
这段代码既简单又有效,应该能达到你的要求!