文章目录
- 前言
- 1.二维数组的length属性
- 1.1代码展示
- 1.2执行结果
- 2.二维数组的元素访问
- 2.1知识点
- 2.2代码展示
- 2.3执行结果
- 3.遍历二维数组
- 3.1核心代码
- 3.1完整代码展示
- 3.3执行结果
- 4.方法的参数是一个二维数组
- 4.1核心代码
- 4.2完整代码展示
- 4.3执行结果
前言
关于java中的二维数组
1、二维数组其实是一个特殊的一位数组,特殊在这个一位数组当中的每一个元素是一个以为数组
2、三叔数组是什么?
三维数组是一个特殊的二维数组。特殊在这个二维数组中每一个元素是一个以为数组
实际的开发中使用最多的是一位数组,二维数组也很少使用,三维数组几乎不用
3、二维数组静态初始化
int[][] array = {{1,2,3},{4,5,6,3,2},{4,8,963}}
1.二维数组的length属性
1.1代码展示
public class ArrayTest09 {
public static void main(String[] args) {
//一位数组
int[] array = {100,200,300};
System.out.println(array.length); //3
System.out.println("===========================");
//二维数组
int[][] a = {
{100,200,300,},
{20,30,40,50,60},
{6,7,9,1},
{0}
};
System.out.println(a.length); //4
System.out.println(a[0].length); //3
System.out.println(a[1].length); //5
System.out.println(a[2].length); //4
System.out.println(a[3].length); //1
}
}
1.2执行结果
2.二维数组的元素访问
2.1知识点
关于二维数组中元素的:读和该。
a[二维数组中的一维数组的下标][一维数组的下标]
a[0][0]:表示第1个一维数组中的第一个元素
a[3][100]:表示第4个一维数组的地101个元素
2.2代码展示
public class ArrayTest10 {
public static void main(String[] args) {
int[][] a = {
{34,4,65},
{100,200,300,111},
{0},
};
//请取出以上二维数组的第一个一维数组
System.out.println(a[0][0]);
//请取出第2个一维数组当中的第三个元素
System.out.println(a[1][2]);
//改
a[2][0] = 1111;
System.out.println(a[2][0]);
//注意别越界
System.out.println(a[2][1]);
}
}
2.3执行结果
3.遍历二维数组
3.1核心代码
(1)和(2)本质一样,(1)是在帮助理解
(1)
for(int i = 0;i<array.length;i++){
String[] 一维数组 = array[i];
//负责遍历一维数组
for(int j = 0;j<一维数组.length;j++){
System.out.println(一维数组[j] + " ");
}
//输出换行符
System.out.println();
}
(2)所以这也就是二维数组遍历的代码形式
for(int i = 0;i<array.length;i++){
for(int j = 0;j<array[i].length;j++){
System.out.println(array[i][j] + " ");
}
//输出换行符
System.out.println();
}
3.1完整代码展示
package com.power.Javase.array;
/*
二维数组的遍历
*/
public class ArrayTest11 {
public static void main(String[] args) {
String[][] array={
{"java","oracle","c++","python","c#"},
{"张三","李四","王五"},
{"lucy","jack","rose"}
};
//遍历二维数组
/*for(int i = 0;i<array.length;i++){
String[] 一维数组 = array[i];
//负责遍历一维数组
for(int j = 0;j<一维数组.length;j++){
System.out.println(一维数组[j] + " ");
}
//输出换行符
System.out.println();
}*/
//合并代码
//遍历二维数组
for(int i = 0;i<array.length;i++){
for(int j = 0;j<array[i].length;j++){
System.out.println(array[i][j] + " ");
}
//输出换行符
System.out.println();
}
}
}
3.3执行结果
4.方法的参数是一个二维数组
4.1核心代码
(1)中间部分也就是二维数组的遍历
public static void printArray(int[][] array){
//二维数组遍历
for(int i =0;i<array.length;i++){
for(int j=0;j<array[i].length;j++){
System.out.println(array[i][j] + " ");
}
System.out.println();
}
(2)二维数组 静态初始化
//静态初始化
int[][] a={{1,2,3,4}, {5,6,7,76}, {1,23,4}};
printArray(a);
(3)但没有这种语法
printArray{{1,2,3,4}, {5,6,7,76}, {1,23,4}};
(4)可以这样写,也就是在一位数组前面加上new int[][]
printArray(new int[][] {{1,2,3,4}, {5,6,7,76}, {1,23,4}});
4.2完整代码展示
package com.power.Javase.array;
/*
动态初始化二维数组
*/
public class ArrayTest12 {
public static void main(String[] args) {
//3行4列
//3个一维数组,每一个一维数组当中4个元素
int[][] array = new int[3][4];
//静态初始化
int[][] a={{1,2,3,4}, {5,6,7,76}, {1,23,4}};
printArray(a);
//没有这种语法
//printArray{{1,2,3,4}, {5,6,7,76}, {1,23,4}};
//可以这样写
printArray(new int[][] {{1,2,3,4}, {5,6,7,76}, {1,23,4}});
}
public static void printArray(int[][] array){
//二维数组遍历
for(int i =0;i<array.length;i++){
for(int j=0;j<array[i].length;j++){
System.out.println(array[i][j] + " ");
}
System.out.println();
}
}
}
4.3执行结果