我正在做一個生活的遊戲,我做了這個方法來查找附近的鄰居遊戲生活:找鄰居
private int getNeighbours(LifeBoard board, int row, int col){
if(board.get(row+1, col)){
neighbours++;
}
if(board.get(row-1, col)){
neighbours++;
}
if(board.get(row, col+1)){
neighbours++;
}
if(board.get(row, col-1)){
neighbours++;
}
if(board.get(row+1, col+1)){
neighbours++;
}
if(board.get(row-1, col-1)){
neighbours++;
}
if(board.get(row+1, col-1)){
neighbours++;
}
if(board.get(row-1, col+1)){
neighbours++;
}
return neighbours;
}
我覺得,如果它是可怕的編碼和它畏縮,所以我的問題是..有沒有辦法讓這個更好?現在,它「排序」的作品,但我想我是否可以用循環來代替。
謝謝。
更好適合codereview.stackexchange.com – 2014-11-24 16:15:55
@Jon Skeet有正確的答案。但是,如果你開始有一個大的領域,你原來的方式將更快地執行,因爲你基本上展開了循環,循環展開總是比循環更快。 – markbernard 2014-11-24 16:44:23