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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© luorenyu 中级黑马   /  2015-8-2 21:37  /  263 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

F、数组中的数组
——二维数组
格式1int[ ] [ ] arr = new int[3][2];
l  定义了名称为arr的二维数组
l  二维数组中有3个一维数组
l  每一个以为数组中有两个元素
l  一维数组的名称分别为arr[0],arr[1], arr[2]
l  给第一个一维数组中角标为1的位赋值78,写法是:arr[0][1]=78;
格式2int[ ] [ ] arr = new int[3][ ];
l  二维数组中都是3个一维数组
l  每个一维数组都是默认初始化值null
l  可以对这三个一维数组分别进行初始化
l  int[ ] [] arr = new int[3][ ];
arr[0]=new int[3];
arr[1]=new int[1];
arr[2]=new int[2];
System.out.println(arr.length);//打印的是二维数组的长度
System.out.println(arr.length);//打印的是二维数组中第一个一维数组的长度
格式3int[][]arr={{3,5,1,7},{2,3,5,7},{6,1,8,2}}
理解应用,如果上面数组表示一个公司三个销售团队每个季度的销售额度,那么求该公司一年的总销售额度?
分析:把所有的数都要加一边,所以要遍历,先遍历二维数组,再遍历二维数组中一维数组的每一个元素,所以有:
class PlanarArray
{
   publicstatic void main(String[] args)
   {
      int[][]arr={{3,5,1,7},{2,3,5,7},{6,1,8,2}};
      intsum=0;
      for(int x=0;x<arr.length ;x++)
      {
        for(int y=0;y<arr[x].length;y++)
        {
           sum=sum+arr[x][y];
        }
      }
      System.out.println("sum="+sum);
   }
}
补充知识:
一维数组的表现形式:
int[] x; int x[];————两种
int[][]y; int[] y[]; int y[][];————三种
练习:给出数组int[]x,y[];请问下面那一个是正确的?
分析:
int[] x,y[];——这个表达式等价于:
int[] x;int [] y[];
a.     x[0]=y;        error
b.     y[0]=x;        yes
c.     y[0][0]=x;     error
d.     x[0][0]=y;     error
e.     y[0][0]=x[0];  yes
f.     x=y            error
Summary: []定义在类型当中[]是跟着类型走的,在类型当中[]对他们都有效,而[]跟着字母走那么只对单个字母有效!

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马