Series

Iterator [C#] List<string> weekDays - foreach, while, Reset

More Code 2018. 6. 15. 20:24


// C# : Iterator

using System;
using System.Collections;
using System.Collections.Generic;

namespace Iteration
{
class Program
{
static void Main(string[] args)
{
List<string> weekDays = new List<string>();
weekDays.Add("Sun");
weekDays.Add("Mon");
weekDays.Add("Tue");
weekDays.Add("Wed");
weekDays.Add("Thu");
weekDays.Add("Fri");
weekDays.Add("Sat");

foreach (string item in weekDays)
{
Console.WriteLine(item);
}

Console.WriteLine("---- End of 1st iteration ----");

IEnumerator myEnumerator = weekDays.GetEnumerator();

while (myEnumerator.MoveNext())
{
Console.WriteLine(myEnumerator.Current);
}

Console.WriteLine("---- End of 2nd iteration ----");

myEnumerator.Reset(); // No Exception occurs

while (myEnumerator.MoveNext())
{
Console.WriteLine(myEnumerator.Current);
}

Console.WriteLine("---- End of 3rd iteration ----");
}
}
}

/* Output
Sun
Mon
Tue
Wed
Thu
Fri
Sat
---- End of 1st iteration ----
Sun
Mon
Tue
Wed
Thu
Fri
Sat
---- End of 2nd iteration ----
Sun
Mon
Tue
Wed
Thu
Fri
Sat
---- End of 3rd iteration ----
*/