import java.util.Scanner;
/**
*@author 作者 Your-Name:
*@version 创建时间:
*类说明:二维数组
*/
public class ErWei {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner input = new Scanner(System.in);
//定义二维数组
int i,j;
int[][] n = new int[5][];
//为二维数组赋值
n = new int[][] {{1,2,3},{5,6}};//静态赋值,不用指定二维数组的行和列
//动态赋值,需要指明二维数组的行和列
int[][] a = new int[5][3];
for(i = 0;i < 5;i ++)//我们可以理解外层循环控制行数
{
for(j = 0;j < 3;j ++)//内层循环控制列数
{
System.out.print("请输入:");
a[i][j] = input.nextInt();
}
}
//二维数组的长度
System.out.println("长度: " + a.length);//结果是5这是把外层当作了一个数组
System.out.println("内部长度:" + a[0].length);//结果是3这是内层的数组长度
System.out.println("总的长度 :" + (a.length * a[0].length));//结果是15
//引用二维数组:通过for循环进行遍历
for(i = 0;i < a.length;i ++)//我们可以理解外层循环控制行数
{
for(j = 0;j < a[i].length;j ++)//内层循环控制列数
{
System.out.println("值:" + a[i][j]);
}
}
//
int[] x,y[];
//表示int[] x一维数组
//int [] y[] y是二维数组
int[][] b = new int[4][];
//b[1][0] = 1;这个是错误的赋值,因为开始二维数组的外层的初始值为null,如果在没有指明列数时内存是找不到b[1
//[0]的
for(i = 0;i < b.length;i ++)
{
System.out.println(b[i]);
}
//System.out.println(b[1][0]);
}
}
外层二维数组初始化