数组

数组的定义

  • 数组表示一组数据类型相同的数据。
    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
    

results matching ""

    No results matching ""