Как получить массив значений в enum - C#
Формулировка задачи:
public enum month
{
январь = 31,
февраль = 28,
март = 31,
апрель = 30,
май = 31,
июнь = 30,
июль = 31,
август = 31,
сентябрь = 30,
октябрь = 31,
ноябрь = 30,
декабрь = 31
}Решение задачи: «Как получить массив значений в enum»
textual
Листинг программы
class Program
{
static void Main(string[] args)
{
Year y = new Year();
foreach (Month m in y)
Console.WriteLine(m);
Console.Read();
}
public enum Month
{
январь = 31,
февраль = 28,
март = 31,
апрель = 30,
май = 31,
июнь = 30,
июль = 31,
август = 31,
сентябрь = 30,
октябрь = 31,
ноябрь = 30,
декабрь = 31
}
public class Year : IEnumerable, IEnumerator
{
private int length = 12;
private int index = -1;
public IEnumerator GetEnumerator() { return this; }
public bool MoveNext()
{
index++;
return (index < length);
}
public void Reset()
{ index = -1; }
public object Current
{
get
{
switch (index)
{
case 00: return Month.январь;
case 01: return Month.февраль;
case 02: return Month.март;
case 03: return Month.апрель;
case 04: return Month.май;
case 05: return Month.июнь;
case 06: return Month.июль;
case 07: return Month.август;
case 08: return Month.сентябрь;
case 09: return Month.октябрь;
case 10: return Month.ноябрь;
case 11: return Month.декабрь;
}
return null;
}
}
}
}