1
내가 목록을 가지고 가정 : -두 개의 특정 객체를 반복 할 수 있습니까?
var animals = new[] {"ant", "bear", "bee", ...... "monkey", ...... "zebra"};
꿀벌과 원숭이 사이에 반복 할 수있는 가장 쉬운 방법은 무엇입니까?
내가 목록을 가지고 가정 : -두 개의 특정 객체를 반복 할 수 있습니까?
var animals = new[] {"ant", "bear", "bee", ...... "monkey", ...... "zebra"};
꿀벌과 원숭이 사이에 반복 할 수있는 가장 쉬운 방법은 무엇입니까?
치아의 많은 갊이 있으리라 후, 머리를 당겨 벽에 머리를 두드리는, 나는 내 자신의 반복자를 만드는 쉬운 방법을하기로 결정했다. 완벽하게
public static class LinqExtensions {
public static IEnumerable<T> InRange<T>(this IEnumerable<T> list, T first, T last) {
int i = 0;
while (list.Count() > i && ! list.ElementAt(i).Equals(first))
++i;
while (list.Count() > i && ! list.ElementAt(i).Equals(last))
yield return list.ElementAt(i);
if (list.Count() > i && list.ElementAt(i).Equals(last))
yield return list.ElementAt(i);
}
}
이제 다음 작품 : -
foreach (var x in animals.InRange("bee", "monkey")) {
....
}
참고이'monkey' 제외됩니다. –
네, 그 말이 맞아요. 그 생각을 어떻게 바꿀 수 있습니까? – MarcinJuraszek
알파벳순으로 정렬되어 있다면 @MarcinJuraszek ... * TakeWhile (a => a <= "원숭이") * – McGarnagle