数组
数组的定义
- 数组表示一组数据类型相同的数据。
int number; // 定义一个整数变量 int[] numbers; // 定义一组整数变量
数组的初始化
- 数组必需要先赋值后使用。
数组的长度必需要明确。
int[] numbers = new int[10]; // 定义包含10个整数的数组变量
可以在初始化的同时快速给每个成员赋值。
// 有3个方法快速给每个成员赋值 int[] numbers = new int[5] {1, 2, 3, 4, 5}; int[] numbers = new int[] {1, 2, 3, 4, 5}; int[] numbers = {1, 2, 3, 4, 5}; // 其中第三种方式只能用在初始化,不能用来做普通赋值。 // int[] numbers; // numbers = {1, 2, 3, 4, 5}; // Error // numbers = new int[] {1, 2, 3, 4, 5}; // OK
数组的使用
- 使用索引号访问数组中的成员。
int[] numbers = new int[10]; numbers[0] = 10; numbers[9] = 50; // 10个长度的数组,其索引是从0到9。 Console.WriteLine(numbers[9]);
数组的数组
数组中可以放一组整数,也可以放一组英雄,那数组中当然也可以放一组数组。
很多游戏中一个角色可以带多个背包,而一个背包中又可以放多件物品,这就是一个典型的数组的数组。
- 数组的数组是一种特殊情况,数组中每一个成员都是数组。
每一个成员的数组长度可以不一样。
// 有两个背包 // 这里物品用int类型模拟下 int[] bagA = new int[5]; // 背包A可以放5个物品 int[] bagB = new int[10]; // 背包B可以放10个物品 // 背包栏最多可以放5个背包 int[][] bags = new int[5][]; // 第一个方括号中一定要明确数组的长度 // 将背包A、背包B放入背包栏中 bags[0] = bagA; bags[1] = bagB;
二维数组
- 二维数组是用两个索引号来索引的数组。
- 二维数组通常用来描述M行N列的矩阵。
二维数组中每一行的元素个数是一样的。
// 定义一个2行3列的矩阵 int[,] dataA = new int[2, 3]; // 定义一个2行3列的矩阵, 并快速初始化数据。 int[,] dataB = { {1, 2, 3}, {4, 5, 6} }; // 访问成员 Console.WriteLine(dataB[0, 1]); // 输出:2