一.引入

数组的概念:是一种容器,可以同时存放多个数据值

数组的特点:
1.数组是一种引用数据类型
2.数组中的多个数据类型必须统一
3.数组的长度在程序运行期间不可改变

二.数组的初始化

数组的初始化;
1.动态初始化(指定长度)
2.静态初始化(指定内容)

【1】动态初始化数组
格式;

数据类型[] 数组名称 = new 数据类型[数组长度];

解析:左侧数据类型也就是数组中保存的数据,全都是统一的什么类型
左侧的中括号;代表一个数组
左侧的数组名称;给数组取一个名称
右侧的new:代表创建数组的动作
右侧的数据类型;与左侧的数据类型相同
右侧中括号的长度;也就是数组中可以保存多少个数据

public class demo01_Array {
    public static void main(String[] args) {
        //创建一个数组,可以存300个int数据
        int[] array_int = new int[300];

        //创建一个数组,可以存10个double数据
        double[] array_double = new double[10];

        //创建一个数组,可以存10个double数据'
        String[] array_String = new String[5];
    }
}

【2】静态初始化
基本格式:

数据类型[] 数组名称 = new 数据类型[] {元素1,元素2,...};
public class demo02_Array {
    public static void main(String[] args) {
        //直接创建一个数组,里面装的全都是int数字,具体为:5,15,25
        int[] array_int = new int[]{5,15,25};

        //直接创建一个数组,里面装的全都是字符串,具体为:Hello,World,Java
        String[] array_String = new String[]{"Hello","World","Java"};
    }
}

省略的静态初始化
省略格式

数据类型[] 数组名称 = {元素1,元素2,...};
public class demo03_Array {
    public static void main(String[] args) {

        //使用了省略格式的静态初始化
        int[] array_int = {5,15,27};

    }
}

注意事项;
1.静态初始化没有指定长度,但是仍然会自动推算得到长度
2.静态初始化格式可以拆分为两个步骤
3.动态初始化也可以拆分为两个步骤
4.静态初始化一旦使用省略格式,就不能拆分为两个步骤

public class demo03_Array {
    public static void main(String[] args) {

        //静态初始化格式可以拆分为两个步骤
        int[] array1;
        array1 = new int[]{10,20,30};

        //动态初始化也可以拆分为两个步骤
        int[] array2;
        array2 = new int[10];
    }
}

三.访问数据元素进行获取

直接打印数组名称,得到的是数组对应的内存地址哈希值

访问数组元素的格式:

数组名称[索引值]
public class demo04_ArrayUse {
    public static void main(String[] args) {
        int[] array_int = {10,20,30};

        //直接打印
        System.out.println(array_int);//[I@1b6d3586
        System.out.println(array_int[0]);//10
        System.out.println(array_int[1]);//20
        System.out.println(array_int[2]);//30

        //赋值给其他变量
        int num = array_int[1];
        System.out.println("num的值为"+num);
    }
}
[I@1b6d3586
10
20
30
num的值为20

Process finished with exit code 0

四.访问数组元素进行赋值

使用动态初始化数组时,其中的元素将会自动拥有一个默认值,规则如下
1.整数型 默认为0
2.浮点型 默认为0.0
3.字符类型 默认为‘\u0000’
4.布尔类型 默认为false
5.引用类型 默认为null

注意事项;
静态初始化也有默认值的过程,只不过系统马上自动将默认值替换成了大括号中的具体数值

public class demo05_ArrayUse {
    public static void main(String[] args) {
        int[] array_int = new int[3];
        System.out.println(array_int);//内存地址
        System.out.println(array_int[0]);
        System.out.println(array_int[1]);
        System.out.println(array_int[2]);
        System.out.println("===========");
        //将数据123赋值交给数组array的1号元素
        array_int[1] = 123;

        System.out.println(array_int[0]);
        System.out.println(array_int[1]);
        System.out.println(array_int[2]);
    }
[I@1b6d3586
0
0
0
===========
0
123
0

Process finished with exit code 0