黑马程序员技术交流社区
标题: 黑马程序员——函数(5) [打印本页]
作者: luorenyu 时间: 2015-8-2 21:37
标题: 黑马程序员——函数(5)
F、数组中的数组
——二维数组
格式1:int[ ] [ ] arr = new int[3][2];
l 定义了名称为arr的二维数组
l 二维数组中有3个一维数组
l 每一个以为数组中有两个元素
l 一维数组的名称分别为arr[0],arr[1], arr[2]
l 给第一个一维数组中角标为1的位赋值78,写法是:arr[0][1]=78;
格式2:int[ ] [ ] 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);//打印的是二维数组中第一个一维数组的长度
格式3:int[][]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: []定义在类型当中[]是跟着类型走的,在类型当中[]对他们都有效,而[]跟着字母走那么只对单个字母有效!
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |