第16天

2023/6/15

# 第16天

今天认识 数组,最近都是学习某一个知识点,一个个掌握,就可以上手了。能够在项目中使用这些语法,是个不错的体验。

# Java 数组

Java 语言中提供的数组是用来存储固定大小的同类型元素。

Java 数组是一种用于存储固定大小的同类型元素的数据结构。数组中的每个元素都可以通过索引访问,索引从0开始。Java 数组可以是一维的,也可以是多维的。

# 实现原理

Java 数组在内存中是连续存储的,每个元素占用相同大小的内存空间。数组的大小在创建时确定,并且不能改变。数组中的元素可以是基本数据类型(如 int、float、char 等)或对象类型。

# 用途

  1. 存储和操作一组数据:数组可以用来存储一组相同类型的数据,方便进行批量操作。
  2. 实现数据结构:数组是实现其他数据结构(如栈、队列、哈希表等)的基础。
  3. 提高性能:由于数组在内存中是连续存储的,访问数组元素的时间复杂度是 O(1),比链表等数据结构更高效。

# 注意事项

  1. 大小固定:数组的大小在创建时确定,不能动态改变。
  2. 类型一致:数组中的所有元素必须是相同类型,不能混合不同类型的数据。
  3. 索引越界:访问数组时,索引值必须在合法范围内(0 到 数组长度-1),否则会抛出 ArrayIndexOutOfBoundsException 异常。
  4. 内存占用:数组在内存中占用连续空间,如果数组很大,可能会浪费内存。

# 示例代码

public class ArrayExample {
    public static void main(String[] args) {
        // 创建一个包含5个整数的数组
        int[] numbers = new int[5];

        // 初始化数组元素
        for (int i = 0; i < numbers.length; i++) {
            numbers[i] = i * 10;
        }

        // 访问数组元素
        for (int i = 0; i < numbers.length; i++) {
            System.out.println("Element at index " + i + ": " + numbers[i]);
        }
    }
}

# 多维数组示例

public class MultiDimensionalArrayExample {
    public static void main(String[] args) {
        // 创建一个2行3列的二维数组
        int[][] matrix = new int[2][3];

        // 初始化二维数组元素
        for (int i = 0; i < matrix.length; i++) {
            for (int j = 0; j < matrix[i].length; j++) {
                matrix[i][j] = i * 3 + j;
            }
        }

        // 访问二维数组元素
        for (int i = 0; i < matrix.length; i++) {
            for (int j = 0; j < matrix[i].length; j++) {
                System.out.println("Element at [" + i + "][" + j + "]: " + matrix[i][j]);
            }
        }
    }
}

通过以上示例代码,可以了解如何创建、初始化和访问一维数组和二维数组。在实际开发中,根据需求选择合适的数据结构来存储和处理数据。