C#中的Array.GetValue()方法用于获取当前Array中指定元素的值。此方法的重载列表中共有8个方法,如下所示:
- Array.GetValue(Int32,Int32)
- Array.GetValue(Int64,Int64)
- Array.GetValue(Int32)
- Array.GetValue(Int64)
- Array.GetValue(Int32,Int32,Int32)
- Array.GetValue(Int64,Int64,Int64)
- Array.GetValue(Int32 [])
- Array.GetValue(Int64 [])
在本文中,我们将解释Array.GetValue(Int32 [])和Array.GetValue(Int64 [])方法。
Array.GetValue(Int32 [])方法用于获取多维Array中指定位置的值。索引由1D数组传递给此方法,这意味着传递的包含指定索引的1D数组作为1D数组的数组元素,并且要搜索的元素位于1D数组中的该索引处。索引被指定为32位整数。
句法:
public object GetValue (int[] index);
此处的“索引”是由32位整数组成的一维数组,代表指定要搜索元素的位置的索引。搜索。
返回:此方法将传递的1D数组定义的指定索引处的元素返回给GetValue方法。该值是一个32位整数值。
例外情况:
- ArgumentException:如果当前数组中的维数不等于传递给GetValue方法的索引数组中的元素数。
- IndexOutOfRangeException:如果索引数组中的元素定义的范围超出了当前数组对应维度的有效索引范围。
- ArgumentNullException:如果索引数组为null,则抛出该异常。
Array.GetValue(Int64 [])方法用于获取多维Array中指定位置的值。索引由1D数组传递给此方法,这意味着传递的包含指定索引的1D数组作为1D数组的数组元素,并且要搜索的元素位于1D数组中的该索引处。索引被指定为64位整数。
句法:
public object GetValue (long[] index);
在此, “ index []”是64位整数的一维数组,其表示指定要搜索的元素的位置的索引。
返回:此方法将传递的1D数组定义的指定索引处的元素返回给GetValue方法。该值是一个32位整数值。
例外情况:
- ArgumentException:如果当前数组中的维数不等于传递给GetValue方法的索引数组中的元素数。
- ArgumentOutOfRangeException:如果索引数组中的元素定义的范围超出了当前数组对应维度的有效索引范围。
- ArgumentNullException:如果索引数组为null,则抛出该异常。
范例1:
C#
// C# program to demonstrate the
// Array.GetValue(Int32[]) and
// Array.GetValue(Int64[]) method
using System;
public class GFG {
public static void Main() {
// declare a character
// array of size 1x2x2x3
// it has 2 3D array
// which have 2 row and 3 column each
char[, , , ] arr = new char[1, 2, 2, 3]{
{
{// array 1
{'A', 'B', 'C'},
{'D', 'E', 'F'}
},
{// array 2
{'G', 'H', 'I'},
{'J', 'K', 'L'}}
}
/*Array look like
|----------------------------------|
| -------------------------------- |
| |A| |B| |C| |
| |D| |E| |F| |
| -------------------------------- |
| -------------------------------- |
| |G| |H| |I| |
| |J| |K| |L| |
| -------------------------------- |
|__________________________________|
*/
};
// initialize a integer array
// contains the index of the element
// index of 'L'
int[] indx = new int[4]{0, 1, 1, 2};
// "indx" array is passing
// to GetValue(Int32[]) method
Console.WriteLine("Element at index [0, 1, 1, 2] is : {0}",
arr.GetValue(indx));
}
}
C#
// C# program to demonstrate the
// Array.GetValue(Int32[]) and
// Array.GetValue(Int64[]) method
using System;
class GFG {
public static void Main() {
// declare a character
// array of size 1x2x2x3
// it has 2 3D array
// which have 2 row and
// 3 column each
string[, , , ] arr = new string[1, 2, 2, 3];
/*Array look like
|------------------------------------|
| ---------------------------------- |
| |C++| |Java| |C#| |
| |Perl| |python| |PHP| |
| ---------------------------------- |
| ---------------------------------- |
| |Ruby| |F#| |Julia| |
| |SQL| |Kotlin| |GO| |
| ---------------------------------- |
|____________________________________|
*/
arr.SetValue("C++", 0, 0, 0, 0);
arr.SetValue("Java", 0, 0, 0, 1);
arr.SetValue("C#", 0, 0, 0, 2);
arr.SetValue("Perl", 0, 0, 1, 0);
arr.SetValue("Python", 0, 0, 1, 1);
arr.SetValue("PHP", 0, 0, 1, 2);
arr.SetValue("Ruby", 0, 1, 0, 1);
arr.SetValue("F#", 0, 1, 0, 1);
arr.SetValue("Julia", 0, 1, 0, 2);
arr.SetValue("SQL", 0, 1, 1, 0);
arr.SetValue("kotlin", 0, 1, 1, 1);
arr.SetValue("GO", 0, 1, 1, 2);
// initialize a integer array
// contains the index of the element
// index of 'C#'
int[] indx = new int[4]{0, 1, 1, 2};
// "indx" array is passing
// to GetValue(Int32[]) method
Console.WriteLine("Element at index [0, 1, 1, 2] is : {0}",
arr.GetValue(indx));
}
}
输出
Element at index [0, 1, 1, 2] is : L
范例2:
C#
// C# program to demonstrate the
// Array.GetValue(Int32[]) and
// Array.GetValue(Int64[]) method
using System;
class GFG {
public static void Main() {
// declare a character
// array of size 1x2x2x3
// it has 2 3D array
// which have 2 row and
// 3 column each
string[, , , ] arr = new string[1, 2, 2, 3];
/*Array look like
|------------------------------------|
| ---------------------------------- |
| |C++| |Java| |C#| |
| |Perl| |python| |PHP| |
| ---------------------------------- |
| ---------------------------------- |
| |Ruby| |F#| |Julia| |
| |SQL| |Kotlin| |GO| |
| ---------------------------------- |
|____________________________________|
*/
arr.SetValue("C++", 0, 0, 0, 0);
arr.SetValue("Java", 0, 0, 0, 1);
arr.SetValue("C#", 0, 0, 0, 2);
arr.SetValue("Perl", 0, 0, 1, 0);
arr.SetValue("Python", 0, 0, 1, 1);
arr.SetValue("PHP", 0, 0, 1, 2);
arr.SetValue("Ruby", 0, 1, 0, 1);
arr.SetValue("F#", 0, 1, 0, 1);
arr.SetValue("Julia", 0, 1, 0, 2);
arr.SetValue("SQL", 0, 1, 1, 0);
arr.SetValue("kotlin", 0, 1, 1, 1);
arr.SetValue("GO", 0, 1, 1, 2);
// initialize a integer array
// contains the index of the element
// index of 'C#'
int[] indx = new int[4]{0, 1, 1, 2};
// "indx" array is passing
// to GetValue(Int32[]) method
Console.WriteLine("Element at index [0, 1, 1, 2] is : {0}",
arr.GetValue(indx));
}
}
输出
Element at index [0, 1, 1, 2] is : GO
注意:对于在线编译器,不能使用32位或64位整数。将脱机编译器用于32或64位整数。