我有一个像这样的二维数组:
0,1,1,1,0
0,1,0,1,1
1,0,1,0,1
1,1,1,0,0
0,0,1,0,0
当数字为1时,我想计算相邻单元格的总和。
前任。对于 i=1,j=1,总和为 4。
循环计数不是问题,但是是否可以通过 java 流进行计数(当然是 ArrayList 而不是 tab[][])?
private void countAlive(Cell[][] cell) {
for (int i = 0; i < cell.length; i++) {
for (int j = 0; j < cell[0].length; j++) {
cell[i][j].setAlive(0);
if (cell[i - 1][j - 1].cellAlive())
cell[i][j].increaseAlive();
if (cell[i - 1][j].cellAlive())
cell[i][j].increaseAlive();
if (cell[i - 1][j + 1].cellAlive())
cell[i][j].increaseAlive();
if (cell[i][j - 1].cellAlive())
cell[i][j].increaseAlive();
if (cell[i][j + 1].cellAlive())
cell[i][j].increaseAlive();
if (cell[i + 1][j - 1].cellAlive())
cell[i][j].increaseAlive();
if (cell[i + 1][j].cellAlive())
cell[i][j].increaseAlive();
if (cell[i + 1][j + 1].cellAlive())
cell[i][j].increaseAlive();
}
}
}
犯罪嫌疑人X
慕虎7371278
相关分类