我想知道是否有办法找到数字模式,因为目前我正在使用它。
private int getRakeConfigForPatch(int patchId) {
switch (patchId) {
case 8550:
return 708;
case 8551:
return 709;
case 8552:
return 710;
case 8553:
return 711;
case 8554:
return 712;
case 8555:
return 713;
case 8556:
return 714;
case 8557:
return 715;
}
return -1;
}
我想知道如何弄清楚这个序列的模式,因为我至少有一百个案例要添加到相同的模式中,我真的不想要额外的200行代码,如果我不需要它。
感谢您的帮助。
答案 0 :(得分:3)
在我看来,你可以这样做:
private int getRakeConfigForPatch(int patchId) {
if (patchId >= 8550 && patchId <= 8557) {
return patchId - 8550 + 708; // or patchId - 7842 for short, but less clear
}
return -1;
}
当然,如果你有更大的范围,你需要更改if
测试,如果你的进展有差距,你可以进行多次测试。
答案 1 :(得分:3)
private int getRakeConfigForPatch(int patchId) {
return patchId - 7842;
}