Array.GetLength(Int32) Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Hiermee haalt u een 32-bits geheel getal op dat het aantal elementen in de opgegeven dimensie van de Array.
public:
int GetLength(int dimension);
public int GetLength(int dimension);
member this.GetLength : int -> int
Public Function GetLength (dimension As Integer) As Integer
Parameters
Retouren
Een 32-bits geheel getal dat het aantal elementen in de opgegeven dimensie aangeeft.
Uitzonderingen
Voorbeelden
In het volgende voorbeeld ziet u hoe GetLength u de dimensies van twee matrices met verschillende rangschikkingen kunt weergeven.
using System;
public class SamplesArray
{
public static void Main()
{
// make a single dimension array
Array MyArray1 = Array.CreateInstance(typeof(int), 5);
// make a 3 dimensional array
Array MyArray2 = Array.CreateInstance(typeof(int), 5, 3, 2);
// make an array container
Array BossArray = Array.CreateInstance(typeof(Array), 2);
BossArray.SetValue(MyArray1, 0);
BossArray.SetValue(MyArray2, 1);
int i = 0, j, rank;
foreach (Array anArray in BossArray)
{
rank = anArray.Rank;
if (rank > 1)
{
Console.WriteLine("Lengths of {0:d} dimension array[{1:d}]", rank, i);
// show the lengths of each dimension
for (j = 0; j < rank; j++)
{
Console.WriteLine(" Length of dimension({0:d}) = {1:d}", j, anArray.GetLength(j));
}
}
else
{
Console.WriteLine("Lengths of single dimension array[{0:d}]", i);
}
// show the total length of the entire array or all dimensions
Console.WriteLine(" Total length of the array = {0:d}", anArray.Length);
Console.WriteLine();
i++;
}
}
}
/*
This code produces the following output:
Lengths of single dimension array[0]
Total length of the array = 5
Lengths of 3 dimension array[1]
Length of dimension(0) = 5
Length of dimension(1) = 3
Length of dimension(2) = 2
Total length of the array = 30
*/
open System
// make a single dimension array
let myArray1 = Array.zeroCreate<int> 5
// make a 3 dimensional array
let myArray2 = Array3D.zeroCreate<int> 5 3 2
// make an array container
let bossArray: Array [] =
[| myArray1
myArray2 |]
let mutable i = 0
for anArray in bossArray do
let rank = anArray.Rank;
if rank > 1 then
printfn $"Lengths of {rank:d} dimension array[{i:d}]"
// show the lengths of each dimension
for j = 0 to rank - 1 do
printfn $" Length of dimension({j:d}) = {anArray.GetLength(j):d}"
else
printfn $"Lengths of single dimension array[{i:d}]"
// show the total length of the entire array or all dimensions
printfn $" Total length of the array = {anArray.Length:d}\n"
i <- i + 1
// This code produces the following output:
// Lengths of single dimension array[0]
// Total length of the array = 5
//
// Lengths of 3 dimension array[1]
// Length of dimension(0) = 5
// Length of dimension(1) = 3
// Length of dimension(2) = 2
// Total length of the array = 30
Public Class SamplesArray
Public Shared Sub Main()
' make a single dimension array
Dim MyArray1 As Array = Array.CreateInstance(GetType(Integer), 5)
' make a 3 dimensional array
Dim MyArray2 As Array = Array.CreateInstance(GetType(Integer), 5, 3, 2)
' make an array container
Dim BossArray As Array = Array.CreateInstance(GetType(Array), 2)
BossArray.SetValue(MyArray1, 0)
BossArray.SetValue(MyArray2, 1)
Dim i As Integer = 0
Dim j As Integer
Dim rank As Integer
For Each anArray As Array In BossArray
rank = anArray.Rank
If rank > 1
Console.WriteLine("Lengths of {0:d} dimension array[{1:d}]", rank, i)
' show the lengths of each dimension
For j = 0 To rank - 1
Console.WriteLine(" Length of dimension({0:d}) = {1:d}", j, anArray.GetLength(j))
Next j
Else
Console.WriteLine("Lengths of single dimension array[{0:d}]", i)
End If
' show the total length of the entire array or all dimensions
Console.WriteLine(" Total length of the array = {0:d}", anArray.Length)
Console.WriteLine()
i = i + 1
Next anArray
End Sub
End Class
'This code produces the following output:
'
'Lengths of single dimension array[0]
' Total length of the array = 5
'
'Lengths of 3 dimension array[1]
' Length of dimension(0) = 5
' Length of dimension(1) = 3
' Length of dimension(2) = 2
' Total length of the array = 30
Opmerkingen
Een voorbeeld hiervan GetLength is GetLength(0), waarmee het aantal elementen in de eerste dimensie van de Array.
Deze methode is een O(1)-bewerking.