day05
数组的理解
* 1. 数组,可以看做是多个相同数据类型类型的变量按照一定顺序依次紧密排列起来的集合。
*
* 2.数组的相关概念:
* 数组名
* 数组元素
* 数组的长度
* 数组的角标、下标、下角标、索引、index
*
* 3. 回顾:变量按照数据类型来分:基本数据类型、引用数据类型(数组、类、接口)
*
* >数组,属于引用数据类型;数组的元素,既可以是基本数据类型,也可以是引用数据类型。
* >数组,一旦初始化完成,其长度就是确定的。且长度不可变
一维数组的使用
4.1 一维数组的声明和初始化
int num;
num = 10;
String info = "明月";
int[] scores = new int[]{56,54,87,98,77,68};
int ages[] = {56,54,87,98,77,68};
String[] names = {"马龙飞","石磊","陈自强"};
String[] foods = new String[5];
foods[0] = "宫保鸡丁";
foods[4] = "水煮鱼";
System.out.println(foods[0]);
System.out.println(scores[2]);
System.out.println(names.length);
System.out.println(scores.length);
for(int i = 0;i < scores.length;i++){
System.out.println(scores[i]);
}
for (int i = 0; i < names.length; i++) {
System.out.println(names[i]);
}
数组元素的默认初始化值 (以动态初始化为例说明)
*
* ① 如果数组元素是整型(byte\short\int\long),则默认值为:0
* ② 如果数组元素是浮点型(float \ double),则默认值为:0.0
* ③ 如果数组元素是boolean型,则默认值为:false
* ④ 如果数组元素是char型,则默认值为:0 或 '\u0000'
*
* ⑤ 如果数组元素是引用数据类型,则默认值为:null
二维数组的使用
* 1. 数组的分类:
* ① 按照数组元素的类型:基本数据类型元素的数组 vs 引用数据类型元素的数组
* ② 按照数组的维数: 一维数组 、 二维数组 、 三维数组 、 。。。。
*
* 2.数组,属于引用数据类型;数组的元素,既可以是基本数据类型,也可以是引用数据类型。
* 如果一维数组的元素,又是一维数组,则构成了二维数组。
int[] scores = new int[]{56,54,87,98,77,68};
String[][] names = new String[][]{{"闫宏浩","杨超宇"},{"付子","周斌","孟腾博"},{"王延彬","翟旭亮"}};
int[][] ages = new int[4][3];
int[] nums[] = new int[4][];
nums[0] = new int[5];
nums[1] = new int[6];
System.out.println(names[1]);
System.out.println(names[1][1]);
ages[1][2] = 12;
System.out.println(names.length);
System.out.println(names[0].length);
for(int i = 0;i < names.length;i++){
for(int j = 0;j < names[i].length;j++){
System.out.print(names[i][j] + " ");
}
System.out.println();
}
形式1,比如:int[][] ages = new int[4][3];
* 外层元素:存储的是地址值
* 内层元素:
* ① 如果数组元素是整型(byte\short\int\long),则默认值为:0
* ② 如果数组元素是浮点型(float \ double),则默认值为:0.0
* ③ 如果数组元素是boolean型,则默认值为:false
* ④ 如果数组元素是char型,则默认值为:0 或 '\u0000'
*
* ⑤ 如果数组元素是引用数据类型,则默认值为:null
*
*
* 形式2,比如:int[][] nums = new int[4][];
* 外层元素:默认值null
* 内层元素:不存在,输出的话,会报异常:NullPointerException
public class ArrayTest1 {
public static void main(String[] args) {
int[][] ages = new int[4][3];
System.out.println(ages[0]);
System.out.println(ages[0][0]);
String[][] arr = new String[4][2];
System.out.println(arr[0][0]);
System.out.println("####################");
int[] nums[] = new int[4][];
System.out.println(nums[0]);
System.out.println(nums[0][0]);
}
}