using System;
using System.Collections;
class Rainbow : IEnumerable, IEnumerator
{
private short IteratorIndex = -1;
public IEnumerator GetEnumerator()
{
return this;
}
public object Current
{
get
{
switch(IteratorIndex)
{
case 0:
return "Red";
case 1:
return "Orange";
case 2:
return "Yellow";
case 3:
return "Green";
case 4:
return "Blue";
case 5:
return "Indigo";
case 6:
return "Violet";
default:
return "*** ERROR ***";
}
}
}
public bool MoveNext()
{
IteratorIndex++;
if(IteratorIndex == 7)
return false;
return true;
}
public void Reset()
{
IteratorIndex = -1;
}
public static void Main()
{
Rainbow MyRainbow = new Rainbow();
foreach(string ColorName in MyRainbow)
Console.WriteLine(ColorName);
}
}
|