为了获得一个通过LinkedList进行迭代的枚举器,代码如下-
using System;
using System.Collections.Generic;
public class Demo {
public static void Main(){
LinkedList<string> list = new LinkedList<string>();
list.AddLast("A");
list.AddLast("B");
list.AddLast("C");
list.AddLast("D");
list.AddLast("E");
list.AddLast("F");
list.AddLast("G");
list.AddLast("H");
list.AddLast("I");
list.AddLast("J");
Console.WriteLine("Count of nodes = " + list.Count);
Console.WriteLine("Elements in LinkedList... (Enumerator iterating through LinkedList)");
LinkedList<string>.Enumerator demoEnum = list.GetEnumerator();
while (demoEnum.MoveNext()) {
string res = demoEnum.Current;
Console.WriteLine(res);
}
}
}输出结果
这将产生以下输出-
Count of nodes = 10 Elements in LinkedList... (Enumerator iterating through LinkedList) A B C D E F G H I J
让我们看另一个例子-
using System;
using System.Collections.Generic;
public class Demo {
public static void Main(String[] args){
LinkedList<string> list1 = new LinkedList<string>();
list1.AddLast("One");
list1.AddLast("Two");
list1.AddLast("Three");
list1.AddLast("Four");
list1.AddLast("Five");
Console.WriteLine("Elements in LinkedList1...");
foreach (string res in list1){
Console.WriteLine(res);
}
LinkedList<string> list2 = new LinkedList<string>();
list2.AddLast("India");
list2.AddLast("US");
list2.AddLast("UK");
list2.AddLast("Canada");
list2.AddLast("Poland");
list2.AddLast("Netherlands");
Console.WriteLine("Elements in LinkedList2... (Enumerator iterating through LinkedList2)");
LinkedList<string>.Enumerator demoEnum = list2.GetEnumerator();
while (demoEnum.MoveNext()) {
string res = demoEnum.Current;
Console.WriteLine(res);
}
LinkedList<string> list3 = new LinkedList<string>();
list3 = list2;
Console.WriteLine("Is LinkedList3 equal to LinkedList2? = "+list3.Equals(list2));
}
}输出结果
这将产生以下输出-
Elements in LinkedList1... One Two Three Four Five Elements in LinkedList2... (Enumerator iterating through LinkedList2) India US UK Canada Poland Netherlands Is LinkedList3 equal to LinkedList2? = True