【发布时间】:2020-06-16 05:51:30
【问题描述】:
我需要制作一个转换表,基本上说明如果变量 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";
}
}
【问题讨论】:
-
你不能在 Java 中为你创建一个方法,比如
boolean inRange(int x, int start, int end) { return start <= x && x <= end; }吗? -
这不是一些非常低效的PHP代码吗?您正在创建一个由 50 个整数组成的数组,然后进行昂贵的数组查找,以测试变量是否落在每个范围的极值之间。 @user 在 Java 中的直截了当的答案最好代替你的 PHP 来实现。
-
我投票结束这个问题,因为这个问题要求翻译代码 - 它不包括他们迄今为止为实现这一目标所做的努力,也不涉及某些语言PHP 中存在的功能,他们试图在 Java 中找到与之等效的功能。