Java入门基础学习笔记28——静态初始化数组

发布于:2024-05-20 ⋅ 阅读:(134) ⋅ 点赞:(0)

数组:

数组就是第一个容器,用来存储同一批同种类型的数据。

例子:

有了变量,为什么还要数组?

结论:遇到批量数据存储和操作的时候,数组比变量更合适。

数组的定义和访问:

静态初始化数组:

定义数组的时候直接给数组赋值。

静态初始化数组的格式:

注意:

1)“数据类型[] 数组名” 也可写成 “数据类型 数组名[]”。

2)什么类型的数组只能存放什么类型的数据。

package cn.ensource.define;

public class ArrayDemo1 {
    public static void main(String[] args) {
        // 目标:掌握数组的定义方式:静态初始化数组
        int[] ages = new int[]{12, 24, 36};
        double[] scores = new double[]{89.9, 99.5, 59.5, 88};

        // 简化写法
        int[] ages2 = {12, 24, 36};
        double[] scores2 = {89.9, 99.5, 59.5, 88};

        // “数据类型[] 数组名” 可以写成 ”数据类型 数组名[]"
        int ages3[] = {12, 24, 36};
        double scores3[] = {89.9, 99.5, 59.5, 88};

        // 什么类型的数组,只能放什么类型的数据
        int[] ages4 = {12, 24, 36, "chang"};   // 报错
        
    }
}

数组在计算机中的基本原理:

数组变量找到数组对象。

ages变量中保存的是数组对象的地址。

package cn.ensource.define;

public class ArrayDemo1 {
    public static void main(String[] args) {
        // 目标:掌握数组的定义方式:静态初始化数组
        int[] ages = new int[]{12, 24, 36};
        double[] scores = new double[]{89.9, 99.5, 59.5, 88};

        System.out.println(ages);      // 打印ages变量的地址
        System.out.println(scores);    // 打印scores变量的地址
    }
}

运行结果:

注意:数组变量名中存储的是数组在内存中的地址,数组是一种引用数据类型。

数组的访问:

就是访问数组中的数据。

语法格式:

数组名称[索引]。

数组中的数据默认是有编号的,默认是从0开始,这个编号就是索引。

数组的长度属性:length

package cn.ensource.define;

public class ArrayDemo2 {
    public static void main(String[] args) {
        // 目标:掌握数组的访问
        int[] arr = {12, 24, 36};

        System.out.println(arr[0]);
        System.out.println(arr[1]);
        System.out.println(arr[2]);
        System.out.println(arr[3]);
    }
}

运行结果:

有一个索引越界的错误提示信息。

package cn.ensource.define;

public class ArrayDemo2 {
    public static void main(String[] args) {
        // 目标:掌握数组的访问
        int[] arr = {12, 24, 36};

        System.out.println(arr[0]);
        System.out.println(arr[1]);
        System.out.println(arr[2]);
//        System.out.println(arr[3]);

        // 修改数组中的值
        arr[0] = 66;
        arr[2] = 100;
        System.out.println(arr[0]);
        System.out.println(arr[1]);
        System.out.println(arr[2]);

        // 获取数组元素的个数
        System.out.println("数组的长度: " + arr.length);

        // 获取数组的最大索引
        System.out.println("数组的最大索引:" + (arr.length - 1));
    }
}

注意:数组的最大索引,有一个前提条件是数组中存在数据。

数组的遍历:

遍历:就是一个一个的访问容器中的数据。

为什么要遍历数组?

求和。

搜索某个数据。

找最大值和最小值。

使用循环来遍历:

package cn.ensource.define;

public class ArrayDemo3 {
    public static void main(String[] args) {
        // 目标:掌握数组的遍历
        int[] ages = {12, 24, 36};

        for(int i = 0; i < ages.length; i++) {
            System.out.println(ages[i]);
        }
    }
}

案例训练:

需求:某部门5名员工的销售额分别是:16、26、36、6、100,请计算出他们部门的总的销售额。

package cn.ensource.define;

public class Sales {
    public static void main(String[] args) {
        // 案例:部门销售额
        int[] sales = {16, 26, 36, 6, 100};

        int sales_sum = 0;  //部门销售额

        for(int i = 0; i < sales.length; i++) {
            sales_sum += sales[i];
        }
        System.out.println("部门销售额: " + sales_sum);
    }
}

运行结果: