你可以用 setTimeout 把gameover判断函数延迟一点触发。 不过也有可能是你和老师的代码不一样,你的计算效率不好,显现慢。
NotifyAll
这个崩了 不过这个bug 第四章讲了
如果k =3时,怎么办
好像是我的canmoveDown写的有点问题。已经改好。。
创建模拟器的时候可以选择分辨率还有if(num>3)改成if(num>=3),否则你会输出4个
canMoveLeft判断了确实可以移动,所以下面一定有移动的可能存在,统一返回true。 不谢,是我应该做的。
hasConflicted[i][k]的值每回合初始化为false,在不冲突的情况下,!hasConflicted[i][k]为true。但是若在move中检查到了冲突,hasConflicted[i][k]设为true,!hasConflicted[i][k]则为false
showNumberWithAnimation负责产生随机数时动画的产生,其中的numberCell.text先附上值,配合之后的动画效果。 updateBoardView在任何动作以后都要调用,包括初始化,移动和产生随机数,所以对于一般情况,对numberCell的text元素赋值。在这点上虽然和showNumberWithAnimation重复了,但是保证了一般状况下的正确性。