JAVA学习第四天
2021/7/7 17:11:21
本文主要是介绍JAVA学习第四天,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
一、今天学了什么
1.二维数组
必须注意动态初始化方式2的各种使用情况!
(1)声明和初始化
int[][] arr1 = new int[][]{{1,2,3},{4,5},{6,7,8}};//静态初始化,类似嵌套 int[][] arr4 = {1,2,3},{4,5},{6,7,8};//类型推断 String[][] arr2 = new String[3][2];//动态初始化方式1
String[][] arr3 = new String[3][];//动态初始化方式2
注意:在声明和初始化中,[]可以放在类型名后,也可以放在数组名后。
(2)元素调用
System.out.println(arr1[0][1]);//2 System.out.println(arr2[1][1]);//null System.out.println(arr3[1][0]);//报错,空指针异常。若要使用必须提前指定该数组的
(3)获取长度
System.out.println(arr1.length);//3 System.out.println(arr[0].length);//3 System.out.println(arr[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] + " "); } } //输出为: /*1 2 3 7 8*/
(5)数组元素默认初始化值
int[][] arr5 = new int[4][3]; System.out.println(arr5[0]);//地址值(一维) System.out.println(arr5[0][0]);//0 //int、String、float、double类型内层的都与int类型一致,与所对应一维数组默认初始化值相同 System.out.println(arr5);//也是地址值(二维)这两处地址不同 //但是必须要注意,使用第二种动态初始化方法时,输出将于上述不同 double[][] arr6 = new double[4][]; System.out.println(arr6[1]);//null。因为其每一个外层都应该是一个数组,数组属于引用类型,引用类型的默认初始值为null! System.out.println(arr6[1][0]);//报错,空指针异常。
小总结:
针对动态初始化方式1:
外层:地址值;
内层:与一维数组初始化相同。
针对动态初始化方式2:
外层:null;
内层:不能调用,否则报错。
2.杨辉三角小练习:
打印一个10行的杨辉三角
代码如下:
int[][] num = new int[10][]; for(int i = 0; i < 10; i++) { num[i] = new int[i+1]; num[i][0] = 1; num[i][i] = 1; if(i > 1) { for(int j = 1; j < num[i].length-1; j++) { num[i][j] = num[i-1][j-1] + num[i-1][j]; } } } for(int i = 0; i < num.length; i++) { for(int j = 0; j < num[i].length; j++) { System.out.print(num[i][j]+" "); } System.out.println(); }
这篇关于JAVA学习第四天的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-23Springboot应用的多环境打包入门
- 2024-11-23Springboot应用的生产发布入门教程
- 2024-11-23Python编程入门指南
- 2024-11-23Java创业入门:从零开始的编程之旅
- 2024-11-23Java创业入门:新手必读的Java编程与创业指南
- 2024-11-23Java对接阿里云智能语音服务入门详解
- 2024-11-23Java对接阿里云智能语音服务入门教程
- 2024-11-23JAVA对接阿里云智能语音服务入门教程
- 2024-11-23Java副业入门:初学者的简单教程
- 2024-11-23JAVA副业入门:初学者的实战指南