- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
...
IEnumerable<Status> Statuses;
public Status GetCurrentStatus1() {
var e = Statuses.GetEnumerator();
e.MoveNext();
return e.Current;
}
public Status GetCurrentStatus2() {
foreach (var e in Statuses)
return e;
return null;
}
public Status GetCurrentStatus3() {
return Statuses.FirstOrDefault();
}
1 - проверка на условие отсутствует
2 - читабельно, хотя медленнее чем 1.
3 - да, нормально, просто метод расширения соотв. нужен
если нет .net 3.5, то можно так:
Йелд-ретурн энумерэйбл возвращает, а тут только первый элемент нужен.