Zhonghui

每个不曾起舞的日子,都是对生命的辜负

User Tools

Site Tools


程序:csharp:数组

C#数组

在C#中,数组实际上是对象,而不只是如在C和C++中的连续内存的可寻址区域。

我的理解:把int[]这种看成一个独立的类型名。


数组下标从0开始。

关于数组长度:创建数组实例时,将建立纬度数量和每个纬度的长度。这些值在实例的生存期内无法更改。

using System;
namespace HelloWorldApplication
{
   class HelloWorld
   {
      static void Main(string[] args)
      {
          // 一维数组
          int[] array1 = new int[5]; // 使用new创建固定长度的数组
          int[] array2 = new int[] { 1, 3, 5, 7, 9 }; // 以初始元素个数确定长度
          int[] array3 = { 1, 2, 3, 4, 5, 6 }; // 以初始元素个数确定长度
 
          // 多维数组
          int[,] multiDimensionalArray1 = new int[2, 3]; // 使用new创建
          int[,] multiDimensionalArray2 = { { 1, 2, 3 }, { 4, 5, 6 } }; // 以初始元素创建
 
          // 一个二维数组,但是只创建了第一维
          int[][] jaggedArray = new int[6][];
          // 手动创建第二个维度
          jaggedArray[0] = new int[4] { 1, 2, 3, 4 };
          // 上面这种就是“交错数组”吧,因为第二个维度的长度不都是一样的
          // 比如jaggedArray[0]和jaggedArray[1]的长度,都是独立的
 
          // 获取长度,想想如果是多维数组获取的是哪一个维度的长度
          int L = array1.Length;
          // 获取数组的维度
          int R = multiDimensionalArray1.Rank;
 
          Console.WriteLine(L);
          Console.WriteLine(R);
      }
   }
}
/var/www/DokuWikiStick/dokuwiki/data/pages/程序/csharp/数组.txt · Last modified: 2022/10/06 15:41 by zh