package com.atguigu.java;
/*
* 二维数组的使用
*
*/
public class ArrayText02 {
public static void main(String[] args) {
//1.二维数组的声明和初始化
int[] arr = new int[] {1,2,3};//一位数组
//静态初始化
int[][] arr1 = new int[][] {{1,2,3},{4,5},{6,7,8}};
int[][] arr4 = {{1,2,3},{4,5},{6,7,8}};//类型推断也正确
//动态初始化1
String[][] arr2 = new String[3][2];
//动初始化2
String[][] arr3 = new String[3][];
//2.如何调用数组的指定位置元素
System.out.println(arr1[0][1]);
System.out.println(arr2[1][1]);
arr3[1] = new String[3];
System.out.println(arr3[1][0]);
//3.获取数组长度
System.out.println(arr1.length);//第一层长度:3
System.out.println(arr1[1].length);//第二层长度:2
//4.遍历二维数组
for(int i = 0; i < arr1.length;i++) {
for(int j = 0;j < arr1[i].length;j++) {
System.out.print(arr1[i][j]+" ");
}
System.out.println();
}
//5.数组元素的默认初始化值
/*针对于初始化方式一:比如:int[][] arr = new int[4][3];
* 外层元素初始化值为:地址值
* 内层元素的初始值为:与一位数组初始化情况相同
*
* 针对于初始化方式二:比如:int[][] arr = new int[4][];
* 外层元素的初始值为:null
* 内层元素的初始化值为:不能调用,否则报错。内层为空指针
*
*/
}
}
* 二维数组的使用
*
*/
public class ArrayText02 {
public static void main(String[] args) {
//1.二维数组的声明和初始化
int[] arr = new int[] {1,2,3};//一位数组
//静态初始化
int[][] arr1 = new int[][] {{1,2,3},{4,5},{6,7,8}};
int[][] arr4 = {{1,2,3},{4,5},{6,7,8}};//类型推断也正确
//动态初始化1
String[][] arr2 = new String[3][2];
//动初始化2
String[][] arr3 = new String[3][];
//2.如何调用数组的指定位置元素
System.out.println(arr1[0][1]);
System.out.println(arr2[1][1]);
arr3[1] = new String[3];
System.out.println(arr3[1][0]);
//3.获取数组长度
System.out.println(arr1.length);//第一层长度:3
System.out.println(arr1[1].length);//第二层长度:2
//4.遍历二维数组
for(int i = 0; i < arr1.length;i++) {
for(int j = 0;j < arr1[i].length;j++) {
System.out.print(arr1[i][j]+" ");
}
System.out.println();
}
//5.数组元素的默认初始化值
/*针对于初始化方式一:比如:int[][] arr = new int[4][3];
* 外层元素初始化值为:地址值
* 内层元素的初始值为:与一位数组初始化情况相同
*
* 针对于初始化方式二:比如:int[][] arr = new int[4][];
* 外层元素的初始值为:null
* 内层元素的初始化值为:不能调用,否则报错。内层为空指针
*
*/
}
}
杨辉三角
package com.atguigu.exec;
/*
* 杨辉三角
*/
public class ArrayDemo1 {
public static void main(String[] args) {
//1.声明并初始化二维数组
int[][] yangHui = new int[10][];
//2.给数组的元素赋值
//yangHui[0] = new int[1];
for(int i = 0;i < yangHui.length;i++) {
yangHui[i] = new int[i+1];
//首末赋值
yangHui[i][0] = 1;
yangHui[i][i] = 1;
if(i>1) {
for(int j = 1;j <yangHui[i].length-1;j++) {
yangHui[i][j] = yangHui[i-1][j-1] + yangHui[i-1][j];
}
}
}
//3.遍历数组
for(int i = 0;i<yangHui.length;i++) {
for(int j = 0;j < yangHui[i].length;j++) {
System.out.print(yangHui[i][j]);
}
System.out.println();
}
}
* 杨辉三角
*/
public class ArrayDemo1 {
public static void main(String[] args) {
//1.声明并初始化二维数组
int[][] yangHui = new int[10][];
//2.给数组的元素赋值
//yangHui[0] = new int[1];
for(int i = 0;i < yangHui.length;i++) {
yangHui[i] = new int[i+1];
//首末赋值
yangHui[i][0] = 1;
yangHui[i][i] = 1;
if(i>1) {
for(int j = 1;j <yangHui[i].length-1;j++) {
yangHui[i][j] = yangHui[i-1][j-1] + yangHui[i-1][j];
}
}
}
//3.遍历数组
for(int i = 0;i<yangHui.length;i++) {
for(int j = 0;j < yangHui[i].length;j++) {
System.out.print(yangHui[i][j]);
}
System.out.println();
}
}
}