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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 韩金蕊 黑马帝   /  2012-1-2 22:18  /  2158 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 韩金蕊 于 2012-1-3 16:21 编辑

请问怎样实现不规则二维数组的列求和?任意的二维数组都能实现吗?

评分

参与人数 1技术分 +1 收起 理由
吴上储 + 1

查看全部评分

3 个回复

倒序浏览
  1. public static void main(String[] args)
  2.         {
  3.                  int[][] twoD = new int[4][];
  4.              int result = 0;
  5.              twoD[0] = new int[4];
  6.              twoD[1] = new int[5];
  7.              twoD[2] = new int[6];
  8.              twoD[3] = new int[7];
  9.              
  10.              for(int[] row:twoD)
  11.              {
  12.                for(int b:row)
  13.                {
  14.                result+=b;
  15.                }
  16.              }
  17.              System.out.println(result);
  18.         }
复制代码

评分

参与人数 1技术分 +1 收起 理由
admin + 1

查看全部评分

回复 使用道具 举报
以下是代码:
public class Test10 {
        public static void main(String[] args) {
                int [][]temp=new int[3][];
                temp[0]=new int[]{1};
                temp[1]=new int[]{14,5,1};
                temp[2]=new int[]{0,5,3};
                int max =0;
                for(int i=0;i<temp.length;i++){
                        if(temp[i].length>max){
                                max=temp[i].length; //获得最长的列
                        }
                }
                for(int i=0;i<max;i++){  //根据列的长度循环
                        int sum=0;
                        for(int j=0;j<temp.length;j++){ //最多temp.length行
                                if(temp[j].length>i){  //如果长度当前行列的长度大于标记列的长度
                                        sum+=temp[j][i]; //加
                                }
                        }
                        System.out.println("第"+i+"列的和为:"+sum);
                }
               
        }
}
你问的任意二维数组都能实现么
我觉得一定能,只不过有的二维数组太罗嗦,里面比较复杂
代码多就是了

评分

参与人数 1技术分 +2 收起 理由
吴上储 + 2

查看全部评分

回复 使用道具 举报
int [][] temp={......}
能,例如:
int sum=0;
for(int i=0;i<temp.length;i++){
   for(int j=0;j<temp[i].length;j++){
         sum+=temp[i][j] ;
   }
}
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马