**由于混淆,重新编辑了问题以使其更有意义
想象一下,有一个带尺寸的坐标平面:
X:0-1000 Z:0-1000
我们将飞机划分为十个区域,如此:
区域1:
X:0-99 Z:0-99
区域2:
X:100-199 Z:100-199
依旧......
然后我们生成三个随机数,例如:
X:56 Z:38
检查坐标所在区域的最有效方法是什么?
似乎使用阻塞方法,例如:
if(X < 100 && Z < 100){
regionA();
} else if(X < 200 && Z < 200){
regionB();
}
//and so on..
会非常低效。
还有其他方法可以检查坐标所在的区域吗?
另一个例子可能是:
根据纬度和经度,你怎么能找出坐标在哪个国家(或者它在海洋中等)?
答案 0 :(得分:0)
好吧,因为每个区域可以说是100块宽,我们可以在坐标中使用数百个值。我假设您将飞机划分为100x100区域。
int x; //Your coordinates here
int z;
double regionx = math.ceil(x/100);
double regionz = math.ceil(z/100);
你可以使用
如果需要返回int值,请regionx.intValue()
或regionz.intValue()