1、變量命名。i,j,k,s,x1,x2,x3,x4從命名上無法直觀地體現出變量本身的含義來
2、魔法數。像40這種,應該做成常量
小的地方就是變量的作用域還可以註意壹下:
private boolean getWeight(int i, int j, int k, int s, int weight) {
int x1, x2, x3, x4;
for (x1 = -1; x1 <= 1; x1++)
for (x2 = -1; x2 <= 1; x2++)
for (x3 = -1; x3 <= 1; x3++)
for (x4 = -1; x4 <= 1; x4++)
if (x1 * i + x2 * j + x3 * k + x4 * s ==weight)
return true;
return false;
}
比如像這個,x1,x2,x3,x4都只在for循環中使用,為啥要聲明在外面呢
private boolean getWeight(int i, int j, int k, int s, int weight) {
for (int x1 = -1; x1 <= 1; x1++)
for (int x2 = -1; x2 <= 1; x2++)
for (int x3 = -1; x3 <= 1; x3++)
for (int x4 = -1; x4 <= 1; x4++)
if (x1 * i + x2 * j + x3 * k + x4 * s ==weight)
return true;
return false;
}