Array.GetValue 方法

定义

获取当前 Array 中指定元素的值。

重载

GetValue(Int32)

获取一维 Array 中指定位置的值。 索引指定为 32 位整数。

GetValue(Int32[])

获取多维 Array 中指定位置的值。 索引指定为一个 32 位整数数组。

GetValue(Int64)

获取一维 Array 中指定位置的值。 索引指定为 64 位整数。

GetValue(Int64[])

获取多维 Array 中指定位置的值。 索引指定为一个 64 位整数数组。

GetValue(Int32, Int32)

获取二维 Array 中指定位置的值。 索引指定为 32 位整数。

GetValue(Int64, Int64)

获取二维 Array 中指定位置的值。 索引指定为 64 位整数。

GetValue(Int32, Int32, Int32)

获取三维 Array 中指定位置的值。 索引指定为 32 位整数。

GetValue(Int64, Int64, Int64)

获取三维 Array 中指定位置的值。 索引指定为 64 位整数。

示例

下面的代码示例演示如何在一维或多维数组中设置和获取特定值。

using namespace System;
int main()
{
   
   // Creates and initializes a one-dimensional array.
   array<String^>^myArr1 = gcnew array<String^>(5);
   
   // Sets the element at index 3.
   myArr1->SetValue( "three", 3 );
   Console::WriteLine( "[3]:   {0}", myArr1->GetValue( 3 ) );
   
   // Creates and initializes a two-dimensional array.
   array<String^, 2>^myArr2 = gcnew array<String^,2>(5,5);
   
   // Sets the element at index 1,3.
   myArr2->SetValue( "one-three", 1, 3 );
   Console::WriteLine( "[1,3]:   {0}", myArr2->GetValue( 1, 3 ) );
   
   // Creates and initializes a three-dimensional array.
   array<String^, 3>^myArr3 = gcnew array<String^,3>(5,5,5);
   
   // Sets the element at index 1,2,3.
   myArr3->SetValue( "one-two-three", 1, 2, 3 );
   Console::WriteLine( "[1,2,3]:   {0}", myArr3->GetValue( 1, 2, 3 ) );
   
   // Creates and initializes a seven-dimensional array.
   array<String^, 7>^myArr7 = gcnew array<String^,7>(5,5,5,5,5,5,5);
   
   // Sets the element at index 1,2,3,0,1,2,3.
   array<Int32>^myIndices = {1,2,3,0,1,2,3};
   myArr7->SetValue( "one-two-three-zero-one-two-three", myIndices );
   Console::WriteLine( "[1,2,3,0,1,2,3]:   {0}", myArr7->GetValue( myIndices ) );
}

/* 
This code produces the following output.

[3]:   three
[1,3]:   one-three
[1,2,3]:   one-two-three
[1,2,3,0,1,2,3]:   one-two-three-zero-one-two-three

*/
using System;

public class SamplesArray  {

   public static void Main()  {

      // Creates and initializes a one-dimensional array.
      String[] myArr1 = new String[5];

      // Sets the element at index 3.
      myArr1.SetValue( "three", 3 );
      Console.WriteLine( "[3]:   {0}", myArr1.GetValue( 3 ) );

      // Creates and initializes a two-dimensional array.
      String[,] myArr2 = new String[5,5];

      // Sets the element at index 1,3.
      myArr2.SetValue( "one-three", 1, 3 );
      Console.WriteLine( "[1,3]:   {0}", myArr2.GetValue( 1, 3 ) );

      // Creates and initializes a three-dimensional array.
      String[,,] myArr3 = new String[5,5,5];

      // Sets the element at index 1,2,3.
      myArr3.SetValue( "one-two-three", 1, 2, 3 );
      Console.WriteLine( "[1,2,3]:   {0}", myArr3.GetValue( 1, 2, 3 ) );

      // Creates and initializes a seven-dimensional array.
      String[,,,,,,] myArr7 = new String[5,5,5,5,5,5,5];

      // Sets the element at index 1,2,3,0,1,2,3.
      int[] myIndices = new int[7] { 1, 2, 3, 0, 1, 2, 3 };
      myArr7.SetValue( "one-two-three-zero-one-two-three", myIndices );
      Console.WriteLine( "[1,2,3,0,1,2,3]:   {0}", myArr7.GetValue( myIndices ) );
   }
}


/*
This code produces the following output.

[3]:   three
[1,3]:   one-three
[1,2,3]:   one-two-three
[1,2,3,0,1,2,3]:   one-two-three-zero-one-two-three

*/
open System

// Creates and initializes a one-dimensional array.
let myArr1 = Array.zeroCreate<string> 5

// Sets the element at index 3.
myArr1.SetValue("three", 3)
printfn $"[3]:   {myArr1.GetValue 3}"

// Creates and initializes a two-dimensional array.
let myArr2 = Array2D.zeroCreate<string> 5 5

// Sets the element at index 1,3.
myArr2.SetValue("one-three", 1, 3)
printfn $"[1,3]:   {myArr2.GetValue(1, 3)}"

// Creates and initializes a three-dimensional array.
let myArr3 = Array3D.zeroCreate<string> 5 5 5

// Sets the element at index 1,2,3.
myArr3.SetValue("one-two-three", 1, 2, 3)
printfn $"[1,2,3]:   {myArr3.GetValue(1, 2, 3)}"

// Creates and initializes a seven-dimensional array.
let myArr7 = Array.CreateInstance(typeof<string>, 5, 5, 5, 5, 5, 5, 5)

// Sets the element at index 1,2,3,0,1,2,3.
let myIndices = [| 1; 2; 3; 0; 1; 2; 3 |]
myArr7.SetValue("one-two-three-zero-one-two-three", myIndices)
printfn $"[1,2,3,0,1,2,3]:   {myArr7.GetValue myIndices}"


// This code produces the following output.
//     [3]:   three
//     [1,3]:   one-three
//     [1,2,3]:   one-two-three
//     [1,2,3,0,1,2,3]:   one-two-three-zero-one-two-three
Public Class SamplesArray

   Public Shared Sub Main()

      ' Creates and initializes a one-dimensional array.
      Dim myArr1(4) As [String]

      ' Sets the element at index 3.
      myArr1.SetValue("three", 3)
      Console.WriteLine("[3]:   {0}", myArr1.GetValue(3))


      ' Creates and initializes a two-dimensional array.
      Dim myArr2(5, 5) As [String]

      ' Sets the element at index 1,3.
      myArr2.SetValue("one-three", 1, 3)
      Console.WriteLine("[1,3]:   {0}", myArr2.GetValue(1, 3))


      ' Creates and initializes a three-dimensional array.
      Dim myArr3(5, 5, 5) As [String]

      ' Sets the element at index 1,2,3.
      myArr3.SetValue("one-two-three", 1, 2, 3)
      Console.WriteLine("[1,2,3]:   {0}", myArr3.GetValue(1, 2, 3))


      ' Creates and initializes a seven-dimensional array.
      Dim myArr7(5, 5, 5, 5, 5, 5, 5) As [String]

      ' Sets the element at index 1,2,3,0,1,2,3.
      Dim myIndices() As Integer = {1, 2, 3, 0, 1, 2, 3}
      myArr7.SetValue("one-two-three-zero-one-two-three", myIndices)
      Console.WriteLine("[1,2,3,0,1,2,3]:   {0}", myArr7.GetValue(myIndices))

   End Sub

End Class


'This code produces the following output.
'
'[3]:   three
'[1,3]:   one-three
'[1,2,3]:   one-two-three
'[1,2,3,0,1,2,3]:   one-two-three-zero-one-two-three

GetValue(Int32)

获取一维 Array 中指定位置的值。 索引指定为 32 位整数。

public:
 System::Object ^ GetValue(int index);
public object GetValue (int index);
public object? GetValue (int index);
member this.GetValue : int -> obj
Public Function GetValue (index As Integer) As Object

参数

index
Int32

一个 32 位整数,它表示要获取的 Array 元素的位置。

返回

Object

一维 Array 中指定位置的值。

例外

当前 Array 不是正好具有一个维度。

index 超出了当前 Array 的有效索引的范围。

注解

GetLowerBoundGetUpperBound方法可以确定值index是否超出边界。

此方法是 O (1) 操作。

另请参阅

适用于

GetValue(Int32[])

获取多维 Array 中指定位置的值。 索引指定为一个 32 位整数数组。

public:
 System::Object ^ GetValue(... cli::array <int> ^ indices);
public object GetValue (params int[] indices);
public object? GetValue (params int[] indices);
member this.GetValue : int[] -> obj
Public Function GetValue (ParamArray indices As Integer()) As Object

参数

indices
Int32[]

一个 32 位整数的一维数组,它表示指定要获取的 Array 元素的位置的索引。

返回

Object

多维 Array 中指定位置的值。

例外

indicesnull

当前 Array 中的维数不等于 indices 中的元素数。

indices 中的任何元素都超出了当前 Array 的相应维度的有效索引范围。

注解

中的 indices 元素数必须与维度 Array数相等。 数组中的所有 indices 元素必须统一指定多维 Array元素中所需元素的位置。

GetLowerBoundGetUpperBound方法可以确定任何索引是否超出边界。

此方法是 O (1) 操作。

另请参阅

适用于

GetValue(Int64)

获取一维 Array 中指定位置的值。 索引指定为 64 位整数。

public:
 System::Object ^ GetValue(long index);
public object? GetValue (long index);
public object GetValue (long index);
[System.Runtime.InteropServices.ComVisible(false)]
public object GetValue (long index);
member this.GetValue : int64 -> obj
[<System.Runtime.InteropServices.ComVisible(false)>]
member this.GetValue : int64 -> obj
Public Function GetValue (index As Long) As Object

参数

index
Int64

一个 64 位整数,它表示要获取的 Array 元素的位置。

返回

Object

一维 Array 中指定位置的值。

属性

例外

当前 Array 不是正好具有一个维度。

index 超出了当前 Array 的有效索引的范围。

注解

GetLowerBoundGetUpperBound方法可以确定值index是否超出边界。

此方法是 O (1) 操作。

另请参阅

适用于

GetValue(Int64[])

获取多维 Array 中指定位置的值。 索引指定为一个 64 位整数数组。

public:
 System::Object ^ GetValue(... cli::array <long> ^ indices);
public object? GetValue (params long[] indices);
public object GetValue (params long[] indices);
[System.Runtime.InteropServices.ComVisible(false)]
public object GetValue (params long[] indices);
member this.GetValue : int64[] -> obj
[<System.Runtime.InteropServices.ComVisible(false)>]
member this.GetValue : int64[] -> obj
Public Function GetValue (ParamArray indices As Long()) As Object

参数

indices
Int64[]

一个 64 位整数的一维数组,它表示指定要获取的 Array 元素的位置的索引。

返回

Object

多维 Array 中指定位置的值。

属性

例外

indicesnull

当前 Array 中的维数不等于 indices 中的元素数。

indices 中的任何元素都超出了当前 Array 的相应维度的有效索引范围。

注解

中的 indices 元素数必须与维度 Array数相等。 数组中的所有 indices 元素必须统一指定多维 Array元素中所需元素的位置。

GetLowerBoundGetUpperBound方法可以确定任何索引是否超出边界。

此方法是 O (1) 操作。

另请参阅

适用于

GetValue(Int32, Int32)

获取二维 Array 中指定位置的值。 索引指定为 32 位整数。

public:
 System::Object ^ GetValue(int index1, int index2);
public object? GetValue (int index1, int index2);
public object GetValue (int index1, int index2);
member this.GetValue : int * int -> obj
Public Function GetValue (index1 As Integer, index2 As Integer) As Object

参数

index1
Int32

一个 32 位整数,它表示要获取的 Array 元素的第一维索引。

index2
Int32

一个 32 位整数,它表示要获取的 Array 元素的第二维索引。

返回

Object

二维 Array 中指定位置的值。

例外

当前 Array 不是正好具有两个维度。

index1index2 超出了当前 Array 的相应维度的有效索引范围。

注解

GetLowerBoundGetUpperBound方法可以确定任何索引是否超出边界。

此方法是 O (1) 操作。

另请参阅

适用于

GetValue(Int64, Int64)

获取二维 Array 中指定位置的值。 索引指定为 64 位整数。

public:
 System::Object ^ GetValue(long index1, long index2);
public object? GetValue (long index1, long index2);
public object GetValue (long index1, long index2);
[System.Runtime.InteropServices.ComVisible(false)]
public object GetValue (long index1, long index2);
member this.GetValue : int64 * int64 -> obj
[<System.Runtime.InteropServices.ComVisible(false)>]
member this.GetValue : int64 * int64 -> obj
Public Function GetValue (index1 As Long, index2 As Long) As Object

参数

index1
Int64

一个 64 位整数,它表示要获取的 Array 元素的第一维索引。

index2
Int64

一个 64 位整数,它表示要获取的 Array 元素的第二维索引。

返回

Object

二维 Array 中指定位置的值。

属性

例外

当前 Array 不是正好具有两个维度。

index1index2 超出了当前 Array 的相应维度的有效索引范围。

注解

GetLowerBoundGetUpperBound方法可以确定任何索引是否超出边界。

此方法是 O (1) 操作。

另请参阅

适用于

GetValue(Int32, Int32, Int32)

获取三维 Array 中指定位置的值。 索引指定为 32 位整数。

public:
 System::Object ^ GetValue(int index1, int index2, int index3);
public object? GetValue (int index1, int index2, int index3);
public object GetValue (int index1, int index2, int index3);
member this.GetValue : int * int * int -> obj
Public Function GetValue (index1 As Integer, index2 As Integer, index3 As Integer) As Object

参数

index1
Int32

一个 32 位整数,它表示要获取的 Array 元素的第一维索引。

index2
Int32

一个 32 位整数,它表示要获取的 Array 元素的第二维索引。

index3
Int32

一个 32 位整数,它表示要获取的 Array 元素的第三维索引。

返回

Object

三维 Array 中指定位置的值。

例外

当前 Array 不是正好具有三个维度。

index1index2index3 超出了当前 Array 的相应维度的有效索引范围。

注解

GetLowerBoundGetUpperBound方法可以确定任何索引是否超出边界。

此方法是 O (1) 操作。

另请参阅

适用于

GetValue(Int64, Int64, Int64)

获取三维 Array 中指定位置的值。 索引指定为 64 位整数。

public:
 System::Object ^ GetValue(long index1, long index2, long index3);
public object? GetValue (long index1, long index2, long index3);
public object GetValue (long index1, long index2, long index3);
[System.Runtime.InteropServices.ComVisible(false)]
public object GetValue (long index1, long index2, long index3);
member this.GetValue : int64 * int64 * int64 -> obj
[<System.Runtime.InteropServices.ComVisible(false)>]
member this.GetValue : int64 * int64 * int64 -> obj
Public Function GetValue (index1 As Long, index2 As Long, index3 As Long) As Object

参数

index1
Int64

一个 64 位整数,它表示要获取的 Array 元素的第一维索引。

index2
Int64

一个 64 位整数,它表示要获取的 Array 元素的第二维索引。

index3
Int64

一个 64 位整数,它表示要获取的 Array 元素的第三维索引。

返回

Object

三维 Array 中指定位置的值。

属性

例外

当前 Array 不是正好具有三个维度。

index1index2index3 超出了当前 Array 的相应维度的有效索引范围。

注解

这些 GetLowerBound 索引和 GetUpperBound 方法可以确定任何索引是否超出边界。

此方法是一个 O (1) 操作。

另请参阅

适用于