Array.Length 属性

定义

获取 Array 的所有维度中的元素总数。

public int Length { get; }

属性值

Array 的所有维度中的元素总数;如果数组中无元素,则为零。

例外

数组是多维数组,包含的元素超过 Int32.MaxValue

示例

以下示例使用 Length 属性获取数组中的元素总数。 它还使用 GetUpperBound 方法确定多维数组的每个维度中的元素数。

using System;

public class Example
{
    public static void Main()
    {
        // Declare a single-dimensional string array
        String[] array1d = { "zero", "one", "two", "three" };
        ShowArrayInfo(array1d);

        // Declare a two-dimensional string array
        String[,] array2d = { { "zero", "0" }, { "one", "1" },
                           { "two", "2" }, { "three", "3"},
                           { "four", "4" }, { "five", "5" } };
        ShowArrayInfo(array2d);

        // Declare a three-dimensional integer array
        int[, ,] array3d = new int[,,] { { { 1, 2, 3 }, { 4, 5, 6 } },
                                       { { 7, 8, 9 }, { 10, 11, 12 } } };
        ShowArrayInfo(array3d);
    }

    private static void ShowArrayInfo(Array arr)
    {
        Console.WriteLine("Length of Array:      {0,3}", arr.Length);
        Console.WriteLine("Number of Dimensions: {0,3}", arr.Rank);
        // For multidimensional arrays, show number of elements in each dimension.
        if (arr.Rank > 1) {
            for (int dimension = 1; dimension <= arr.Rank; dimension++)
                Console.WriteLine("   Dimension {0}: {1,3}", dimension,
                                  arr.GetUpperBound(dimension - 1) + 1);
        }
        Console.WriteLine();
    }
}
// The example displays the following output:
//       Length of Array:        4
//       Number of Dimensions:   1
//
//       Length of Array:       12
//       Number of Dimensions:   2
//          Dimension 1:   6
//          Dimension 2:   2
//
//       Length of Array:       12
//       Number of Dimensions:   3
//          Dimension 1:   2
//          Dimension 2:   2
//          Dimension 3:   3

注解

检索此属性的值的运算复杂度为 O(1)。

适用于

产品 版本
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0

另请参阅