int[][] arr3 = new int[5][];//五行的长度
for(int i=0; i
(1)
二维数组
是一个元素为一维数组的一维数组;(2)从语法上
Java
支持多维数组,但从内存分配原理的角度看,
Java
中只有一维数组,没有多维数组。或者说,从表面上是多维数组,实质上都是一维数组;(3)
Java
中操作多位数组的语法与一维数组类似。在实际应用中,三维以上的数组很少使用,主要使用
二维数组
。
二、声明
二维数组
三、
二维数组
的
初始化
和赋值
四、遍历
二维数组
五、用Arrays类中的方法输出数组
基本概念 由一维数组组成的数组
二维数组
的每个元素都是一个一维数组(第二维度)————绝大部分应用场景里,二位数组的“第二维度”的数组长度是相同的语法格式Int[][] 数组名称 = new int[行数][列数];
初始化
了一个长度为2的一维数组,且元素都是数组;每个元素数组的长度都是3;二行三列的数据类型为int的
二维数组
;arr.length 代表二位数组的大小/元素个数/一维数组的个数,行数;arr[0].length 代表
二维数组
第一个元素/一维数组的大小,列数。
由于
二维数组
的本质仍是一个
1、
Java
创建
二维数组
:int [][] array = new int[6][6];
2、直接创建
二维数组
并赋值:int [][] array = {{1,2,3},{1,2,3},{1,2,3}};
3、
二维数组
的声明:
先声明再分配内存
数组声明:数据类型 数组名[][];
数组名[行下标][列下标]
【示例】 int[][] x = new int[3][4];
元素有x[0][0] ,x[0][1],x[0][2] x[0][3]; x[1][0] , x[1][1], x[1][2] ,x[1][3]; x[2][0] ,x[2][1],x[2][2] ,x[2][3]; 共 12个元素 ;
x[1][2] = 5 ;
二维数组
——
初始化
方法一:简便写法
不能提供行数与列数
中间的花括号不可以省略
二维数组
——
初始化
方法二 :使用随机数(0~100)
数组行数(长度)
1.定义一个字符串的
二维数组
,三行两列,数组每一个元素值循环输入6个人的姓名,再循环输出6个人的姓名
2.将一个整形
二维数组
赋值为如下形式:
3.在如下整形数组中 //1 3 9 2 // 2 7 6 3 // 5 4 1 1 // 6 8 8 2 // 求两条对角线上的和
4.//6 判断
二维数组
是否为对称数组 // {1,2,3,4}, // {2,1,4,3}, // {3,4,1,2}, // {4,3,2,1}
5.用
二维数组
做一个简易的商品管理系统
可以使用以下五种
方式
初始化
二维数组
:
1. 直接
初始化
:int[][] arr = {{1,2,3},{4,5,6},{7,8,9}};
2. 动态
初始化
:int[][] arr = new int[3][3];
for(int i=;i<3;i++){
for(int j=;j<3;j++){
arr[i][j] = i*3+j+1;
3. 使用Arrays.fill()方法
初始化
:int[][] arr = new int[3][3];
for(int i=;i<3;i++){
Arrays.fill(arr[i],i*3+1);
4. 使用Arrays.copyOf()方法
初始化
:int[][] arr1 = {{1,2,3},{4,5,6},{7,8,9}};
int[][] arr2 = Arrays.copyOf(arr1,3);
5. 使用System.arraycopy()方法
初始化
:int[][] arr1 = {{1,2,3},{4,5,6},{7,8,9}};
int[][] arr2 = new int[3][3];
for(int i=;i<3;i++){
System.arraycopy(arr1[i],,arr2[i],,3);
循环打印输出
二维数组
可以使用嵌套循环:
for(int i=;i<arr.length;i++){
for(int j=;j<arr[i].length;j++){
System.out.print(arr[i][j] + " ");
System.out.println();