次の方法で共有


Array.Length プロパティ

定義

Array のすべての次元内の要素の総数を取得します。

public:
 property int Length { int get(); };
public int Length { get; }
member this.Length : int
Public ReadOnly Property Length As Integer

プロパティ値

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
open System


let showArrayInfo (arr: Array) =
    printfn $"Length of Array:      {arr.Length,3}"
    printfn $"Number of Dimensions: {arr.Rank,3}"
    // For multidimensional arrays, show number of elements in each dimension.
    if arr.Rank > 1 then
        for dimension = 1 to arr.Rank do
            printfn $"   Dimension {dimension}: {arr.GetUpperBound(dimension - 1) + 1,3}"
    printfn ""

// Declare a single-dimensional string array
let array1d = [| "zero"; "one"; "two"; "three" |]
showArrayInfo array1d

// Declare a two-dimensional string array
let array2d = 
    array2D [ [ "zero"; "0" ]; [ "one"; "1" ]
              [ "two"; "2" ]; [ "three"; "3" ]
              [ "four"; "4" ]; [ "five"; "5" ] ]

showArrayInfo array2d

// Declare a three-dimensional integer array
let array3d = Array3D.create 2 2 3 "zero"

showArrayInfo array3d

// 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
Module Example
    Public Sub Main()
        ' Declare a single-dimensional string array
        Dim array1d() As String = {"zero", "one", "two", "three"}
        ShowArrayInfo(array1d)

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

        ' Declare a three-dimensional integer array  
        Dim array3d(,,) As Integer = New Integer(,,) {{{1, 2, 3}, {4, 5, 6}},
                                        {{7, 8, 9}, {10, 11, 12}}}
        ShowArrayInfo(array3d)

    End Sub

    Private Sub ShowArrayInfo(arr As Array)
        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 Then
            For dimension As Integer = 1 To arr.Rank
                Console.WriteLine("   Dimension {0}: {1,3}", dimension,
                                  arr.GetUpperBound(dimension - 1) + 1)
            Next
        End If
        Console.WriteLine()
    End Sub
End Module
' 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) 操作になります。

適用対象

こちらもご覧ください