在 C# 中获取数组的大小

Muhammad Maisam Abbas 2023年1月30日 2021年3月21日
  1. 使用 C# 中的 Array.Length 属性获取数组的大小
  2. 使用 C# 中的 Array.Rank 属性和 Array.GetLength() 函数获取多维数组每个维度的大小
在 C# 中获取数组的大小

本教程将讨论在 C# 中获取数组大小的方法。

使用 C# 中的 Array.Length 属性获取数组的大小

数组的大小表示数组可以存储在其中的元素总数。Array.Length 属性提供了 C# 中数组的总大小。下面的代码示例向我们展示了如何使用 C# 中的 Array.Length 属性获取数组的长度。

using System;

namespace size_of_array
{
    class Program
    {
        static void method1()
        {
            int[] a = new int[17];
            Console.WriteLine(a.Length);
        }
        static void Main(string[] args)
        {
            method1();
        }
    }
}

输出:

17

在上面的代码中,我们使用 C# 中的 a.Length 属性获得 a 数组的长度。此方法还可用于获取多维数组的总大小。下面给出确定二维数组总大小的代码。

using System;

namespace size_of_array
{
    class Program
    {
        static void method1()
        {
            int[,] a = new int[17,2];
            Console.WriteLine(a.Length);
        }
        static void Main(string[] args)
        {
            method1();
        }
    }
}

输出:

34

使用 C# 中的 Array.Rank 属性和 Array.GetLength() 函数获取多维数组每个维度的大小

假设我们有一个多维数组,我们想在多维数组中获取每个维的大小。在这种情况下,我们必须使用 Array.Rank 属性和 C# 中的 Array.GetLength() 函数Array.Rank 属性为我们提供了数组内部的维数。Array.GetLength(i) 函数为我们提供了数组 i 维的大小。下面的代码示例向我们展示了如何使用 C# 中的 Array.Rank 属性和 Array.GetLength() 函数获得多维数组每个维度的总大小。

using System;

namespace size_of_array
{
    class Program
    {
        static void method2()
        {
            int[,] a = new int[17, 2];
            int i = a.Rank;
            for(int x = 0; x < i; x++)
            {
                Console.WriteLine(a.GetLength(x));
            }

        }
        static void Main(string[] args)
        {
            method2();
        }
    }
}

输出:

17
2

在上面的代码中,我们使用 a.Rank 属性和 a.GetLength(x) 函数打印多维数组 a 的每个维度的大小。我们使用 a.Rank 属性获取 a 数组中的维数,并使用 for 循环遍历每个维。然后,使用 a.GetLength(x) 函数打印每个维度的大小,其中 x 是该维度的索引。

Muhammad Maisam Abbas avatar Muhammad Maisam Abbas avatar

Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.

LinkedIn

相关文章 - Csharp Array