C#数组详解:定义、声明、操作及常见问题
该思维导图概述了数组这一数据结构。它涵盖了数组的定义、优点(随机访问、存储大量数据)、声明、初始化(静态和动态)、元素访问(索引从0开始)、属性(Length)、类型(一维、多维、交错数组),以及数组操作(遍历、排序)。 同时,也指出了数组常见问题,例如索引越界和数组长度不可变等特性。 思维导图清晰地展现了数组的概念、使用方法和需要注意的问题。
源码
# C#数组详解
## 数组概述
### 定义
- 存储同类型元素的固定大小的数据结构
### 优点
- 随机访问
- 存储大量数据
## 数组声明
### 语法
- 数据类型 数组名
### 示例
- `int[] numbers;`
## 数组初始化
### 静态初始化
- 直接赋值
- 可同时定义和初始化
- `int[] numbers = { 1, 2, 3, 4, 5 };`
### 动态初始化
- 使用new关键字
- 定义大小
- `int[] numbers = new int[5];`
## 数组元素访问
### 索引
- 从0开始
### 访问语法
- 数组名[索引]
### 示例
- `numbers[0]`
## 数组属性
### Length
- 获取数组长度
### 示例
- `numbers.Length`
## 数组类型
### 一维数组
- 单行元素
### 多维数组
- 矩阵表示
### 交错数组(锯齿数组)
- 行的长度可以不同
## 多维数组
### 声明
- 数据类型 数组名
### 示例
- `int[,] matrix;`
### 初始化
- 使用new关键字
- `int[,] matrix = new int[3, 3];`
## 交错数组
### 声明
- 数据类型 数组名
### 示例
- `int[][] JaggedArray;`
### 初始化
- 使用new关键字
- `int[][] JaggedArray = new int[3][];`
## 数组操作
### 遍历
- 使用循环结构
- for循环
- foreach循环
### 排序
- 使用Array.Sort方法
## 数组常见问题
### 索引越界
- 访问不存在的索引
### 数组长度不可变
- 不支持动态调整大小
### 内存连续分配
- 物理内存上的连续存储
图片