델리게이트를 사용하는 방법을 이해하고 있으며, 람다 식에서도 술어를 사용할 수 있습니다. 내가 원하는어떻게 술어를 사용하여 일치 알고리즘을 구현합니까?
private static T FindInCollection<T>(ICollection<T> collection, Predicate<T> match)
{
foreach (T item in collection)
{
//So how do I reference match to return the matching item?
}
return default(T);
}
에 : 나는 인수로 술어를 사용하는 방법을 구현하려는 내 컬렉션의 일치를 찾기 위해 술어를 참조하는 방법을 알아낼 수 없습니다 지점으로 왔어요 다음에 가깝다이 사용하는 것을 참조 : 누군가가 나에게 설명을 제공하거나 술어의 구현에 대한 참조를 날 지점 수 있다면
ICollection<MyTestClass> receivedList = //Some list I've received from somewhere else
MyTestClass UsefulItem = FindInCollection<MyTestClass>(receivedList, i => i.SomeField = "TheMatchingData");
을, 나는 그것을 감사하겠습니다. 모든 사실을 사용하는 기능을 구현하지, (내가 잘 할 수있는) 조건을 통과와 관련하는 문서는 거기 당신은 그냥 같이 술어를 사용
감사
Where 메서드를 사용할 수없는 이유는 무엇입니까? –
@ 카메론 : D' oh! 내가 System.Linq를 참조하지 않았기 때문에 내가 그것을 사용할 수 없었던 이유가있다. 하하! 나는 그것을 사용할 수있을 거라 생각했지만 intellisense에 나타나지 않았다. 좀 더 자야 해. LOL, 고마워. – BobTheBuilder
@Cameron : 구현할 수있는 것이 항상 유용하기 때문에 응답은 제공되지만 불필요한 것은 다른 상황에서도 사용할 수 있습니다. – BobTheBuilder