程序员最近都爱上了这个网站  程序员们快来瞅瞅吧!  it98k网:it98k.com

本站消息

站长简介/公众号

  出租广告位,需要合作请联系站长


+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

暂无数据

二维数组中的越界异常

发布于2021-11-11 14:12     阅读(598)     评论(0)     点赞(22)     收藏(2)


试图在二维数组中找到所有偶数的总和和所有奇数的乘积。

为什么我收到以下越界异常错误?

Exception java. lang. Array Index Out Of Bounds Exception

运行代码时,此异常出现在行 if(m[i][j]%2==0)

代码照片


解决方案


您错误的确切原因是您的二维数组实际上是一个锯齿状数组,这意味着并非每一行都包含相同数量的元素。事实上,第二行只包含三个元素,所以当你进行以下if检查时:

if (m[i][j]%2 == 0)

你会得到一个出界异常i=1j=3

您应该使二维数组无锯齿状,或者改为使用此for循环:

for (int i=0; i < 4; ++i) {
    for (int j=0; j < m[i].length; ++j) {
            if (m[i][j]%2 == 0) {
                s += m[i][j];
            }
            else {
                r *= m[i][j];
            }
        }
    }
}


所属网站分类: 技术文章 > 问答

作者:黑洞官方问答小能手

链接:http://www.javaheidong.com/blog/article/313039/1831bbd457c117fcabab/

来源:java黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

22 0
收藏该文
已收藏

评论内容:(最多支持255个字符)