此方法用于返回数组的IEnumerator。
句法:
public System.Collections.IEnumerator GetEnumerator ();
返回值:该方法返回数组的IEnumerator。
下面的程序说明了Array.GetEnumerator方法的用法:
范例1:
// C# program to demonstrate
// GetEnumerator() method
using System;
using System.Collections;
using System.Collections.Generic;
public class GFG {
// Main Method
public static void Main()
{
// Creating and initializing new the String
String[] myArr = {"Sun", "Mon", "Tue", "Thu"};
// Display the values of the myArr.
Console.Write("Initial Array: ");
// calling the PrintIndexAndValues()
// method to print
PrintIndexAndValues(myArr);
// getting the IEnumerator for the myArr
IEnumerator myEnumerator = myArr.GetEnumerator();
// calling the PrintIndexAndValues()
// method to print
Console.WriteLine("Enumerated value: ");
PrintIndexAndValues(myEnumerator);
}
// Defining the method
// PrintIndexAndValues
public static void PrintIndexAndValues(String[] myArr)
{
for (int i = 0; i < myArr.Length; i++) {
Console.Write("{0} ", myArr[i]);
}
Console.WriteLine();
Console.WriteLine();
}
// Overriding the method
// PrintIndexAndValues
public static void PrintIndexAndValues(IEnumerator myEnumerator)
{
int i = 0;
while ((myEnumerator.MoveNext()) &&
(myEnumerator.Current != null)) {
Console.WriteLine("[{0}] {1}", i++,
myEnumerator.Current);
}
}
}
输出:
Initial Array: Sun Mon Tue Thu
Enumerated value:
[0] Sun
[1] Mon
[2] Tue
[3] Thu
范例2:
// C# program to demonstrate
// GetEnumerator() method
// For int value
using System;
using System.Collections;
using System.Collections.Generic;
public class GFG {
// Main Method
public static void Main()
{
// Creating and initializing new the int
int[] myArr = {10, 20, 30, 40};
// Display the values of the myArr.
Console.Write("Initial Array: ");
// calling the PrintIndexAndValues()
// method to print
PrintIndexAndValues(myArr);
// getting the IEnumerator for the myArr
IEnumerator myEnumerator = myArr.GetEnumerator();
// calling the PrintIndexAndValues()
// method to print
Console.WriteLine("Enumerated value: ");
PrintIndexAndValues(myEnumerator);
}
// Defining the method
// PrintIndexAndValues
public static void PrintIndexAndValues(int[] myArr)
{
for (int i = 0; i < myArr.Length; i++) {
Console.Write("{0} ", myArr[i]);
}
Console.WriteLine();
Console.WriteLine();
}
// Overriding the method
// PrintIndexAndValues
public static void PrintIndexAndValues(IEnumerator myEnumerator)
{
int i = 1;
while ((myEnumerator.MoveNext()) &&
(myEnumerator.Current != null)) {
Console.WriteLine("{0}> {1} ", i++,
myEnumerator.Current);
}
}
}
输出:
Initial Array: 10 20 30 40
Enumerated value:
1> 10
2> 20
3> 30
4> 40
参考:
- https://docs.microsoft.com/zh-cn/dotnet/api/system.array.getenumerator?view=netframework-4.7.2