इस कोड को दिया:
IEnumerable<object> FilteredList()
{
foreach( object item in FullList )
{
if( IsItemInPartialList( item ) )
yield return item;
}
}
मुझे इसे इस तरह कोड क्यों नहीं करना चाहिए ?:
IEnumerable<object> FilteredList()
{
var list = new List<object>();
foreach( object item in FullList )
{
if( IsItemInPartialList( item ) )
list.Add(item);
}
return list;
}
मैं समझता हूं कि yield
कीवर्ड क्या करता है। यह संकलक को एक निश्चित प्रकार की चीज (एक पुनरावृत्ति) बनाने के लिए कहता है। लेकिन इसका उपयोग क्यों करें? इसके अलावा यह थोड़ा कम कोड होने के कारण, यह मेरे लिए क्या है?
FullList.Where(IsItemInPartialList)
:)