今天我悲剧了...这个谁能一下看出来 呵呵 估计不少都能 我看了一小时 if (y >= map.length || x >= map[y].length||x<0||y<0) { return;这个东西报异常 找了好久才明白 小散一下分 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 找到原因就好-----------------------------------------------千万别按CTRL+W map[y]如果提示数组越界那应该是这个。还有你的map代表的是什么?数组? if (y >= map.length || x >= map[y].length) //当y大于map的长度时, x >=map[y].length这里越界了 说明你的 map里没有第y个元素。 y>=map.length... 诶如果你的y正好是数组的长度,那就挂了比如,分别有a[0]到a[4],5个元素,是吧?size = 5但是你写个a[5]试试看?所以建议以后不要把这么罗嗦的逻辑表达式写一排 不明白x, y 代表什么意思,另外,“||”符合短路求值法,也就是先运算左边的,若为真则不会运算右边的,若有数组越界,此时y<0, 因为当y>=map.length时,if 语句“||”左边为TRUE,不会计算“||”右边的表达式 呵呵。。就是定义数组长度的时候,一定要大于等于0,map【y】中如果y小于0肯定出错,楼主以后小心一点,主要是概念要理解清楚。 y >= map.length || x >= map[y].length一眼看出来 map 到底是变量还是指针? x >= map[y].length这是什么意思呀? if (y<0 || x<0 || map == null || y >= map.Length || map[y] == null || x >= map[y].length) return; java apache poi下载问题 关于字符串比较的问题,求高手解答 有趣的逻辑题,天使和恶魔 一个关于JAVA继承和重载的问题 第一个hibernate 程序找不到数据库驱动 用iexpress.exe把ocx生成了cab文件,但是如何查看CLASSID 控件的 CLSID ? 关于鼠标事件的问题 如何让控件中的“...”不显示 怎样把int型转为string型? 把两个时间相加怎么做? 时间转换的问题 socket传输文件出现很诡异的错误..
-----------------------------------------------
千万别按CTRL+W
if (y >= map.length || x >= map[y].length) //当y大于map的长度时, x >=map[y].length这里越界了
比如,分别有a[0]到a[4],5个元素,是吧?
size = 5
但是你写个a[5]试试看?
所以建议以后不要把这么罗嗦的逻辑表达式写一排
另外,“||”符合短路求值法,也就是先运算左边的,若为真则不会运算右边的,
若有数组越界,此时y<0, 因为当y>=map.length时,if 语句“||”左边为TRUE,不会计算“||”右边的表达式
这是什么意思呀?