我正在尝试用Java制作“生命游戏”。我做了一个二维矩阵,并用布尔值填充它。
现在,我正在尝试计算相邻单元格的布尔值的正确性,但是当我使用=
时,我得到了包围它的所有单元格(例如:中间的一个单元格为8,一个角上的单元格给出3),而当我使用==
时,我只得到全0。
if语句示例(第一个有效,第二个无效):
if(!celloc.equals("URC") && !celloc.equals("RightB") && !celloc.equals("LRC")) {
if(current[i][j+1] = true) {
life++; // right
}}
答案 0 :(得分:1)
单个“ =”用于分配,在进行等效性测试时使用“ ==”。另外,如果“ current [i] [j + 1]”是布尔值,则只需键入:
if(current[i][j+1]) {
测试该值是否为true。您可能会得到0,因为您可能不会到达if语句。尝试添加一些输出以查看您的第一个if语句是否真的为真。