java 俄罗斯方块边界问题

方块到达边界后显示数组越界,怎样才能解决这个问题方块数组为:shape[][][]地图数组为:map[21][38]publicbooleanisLegal(intx,i... 方块到达边界后显示数组越界,怎样才能解决这个问题
方块数组为:shape[][][]地图数组为:map[21][38] public boolean isLegal(int x,int y, int type,int state) { for (int a = 0; a < 4; a++) { for (int b = 0; b < 4; b++) { if ((shape[type][state][a * 4 + b] == 1) &&(map[x + b +1][y + a +1 ] == 1)) { return false; } } } return true; }
展开
 我来答
302652034_bai
2015-01-01 · TA获得超过4145个赞
知道大有可为答主
回答量:2206
采纳率:66%
帮助的人:1540万
展开全部
if(type<shape.legth&&state<春游码扒哪磨贺shape[type].length&&a*4+b<shape[type][state].length)
同理
x+b+1<map.lenght&&y+a+1<map[x+b+1].length
更多追问追答
追问
你的方法写错了,还是不能运行
追答
写错了?我只是告诉你判断一下边界而已
你加到:
if ((shape[type][state][a * 4 + b] == 1) &&(map[x + b +1][y + a +1 ] == 1))
{
return false;
}
这个之前,如果不满足那些条件,直接跳过上面这段代码。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式