A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© Y_木头人 中级黑马   /  2015-1-5 21:43  /  1354 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

class ErweiShuzu
{
        public static void main(String[] args)
        {
                int[][] arr=new int[4][];//后面括号内添加数字有没有影响?为什么?
                arr[0]=new int[]{1,2};
                arr[1]=new int[]{1,2,3};
                arr[2]=new int[]{1,2,3,4};
                arr[3]=new int[]{1,2,3,4,5,6};
                int sum=0;
                for (int i=0;i<arr.length;i++)
                {
                        int groupSum=0;
                        for (int j=0;j<arr.length;j++)
                        {
                                groupSum+=arr[j];
                        }
                        sum+=groupSum;
                        System.out.println("第"+(i+1)+"组的和为"+groupSum);
                }
                System.out.println("总和为"+sum);
        }
}

4 个回复

倒序浏览
可以添加,但是如果添加的话,那么每个一维数组的长度都相等的了。
回复 使用道具 举报
我试了一下没有影响,我分析应该是因为二维数组中存储的是一维数组的地址, arr[0]=new int[]{1,2};             arr[1]=new int[]{1,2,3};                arr[2]=new int[]{1,2,3,4};                arr[3]=new int[]{1,2,3,4,5,6};这几句用二维数组中的元素(一维数组)指向new出的数组对象;所以不会有影响
回复 使用道具 举报
独自的旅程 发表于 2015-1-5 21:49
可以添加,但是如果添加的话,那么每个一维数组的长度都相等的了。

已经解决了,谢谢。
回复 使用道具 举报
chudaming213 发表于 2015-1-6 21:23
我试了一下没有影响,我分析应该是因为二维数组中存储的是一维数组的地址, arr[0]=new int[]{1,2};        ...

嗯,相当于给它重新赋值了,所以无论它里面的数值是多少,都不会有影响的,谢谢。。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马