一、引言
数组是最基础的数据结构之一,理解其底层原理对算法设计至关重要。本文将从基础定义、核心操作到实际应用场景,系统梳理数组的使用规范。
二、基础认识
数组在内存中占用一段连续空间,存储相同类型的元素,每个元素对应唯一的索引下标。

三、基本操作
1. 创建数组
Java 中主要有四种创建方式,区别在于长度是否可变及类型限制:
int[] arr1 = {1, 2, 3}; // 已知元素,静态长度
int[] arr2 = new int[]{1, 2, 3}; // 已知元素,静态长度
int[] arr3 = new int[3]; // 未知元素,已知长度
ArrayList<Integer> arr4 = new ArrayList<>(); // 动态长度
原生数组(如 int[])长度一旦定义便不可变,未赋值时基本类型默认为 0;而 ArrayList 基于数组实现,支持自动扩容缩容,但只能存储引用类型(需包装类)。
| 对比维度 | 原生数组 (int[]) | ArrayList<Integer> |
|---|---|---|
| 长度特性 | 固定不变(静态) | 自动扩容 / 缩容(动态) |
| 初始化 | 默认值为 0 | 初始为空 |
| 操作方式 | 仅支持下标访问,增删需重构 | 提供 add/remove/get/set 等方法 |
| 存储类型 |


