2012-07-18 41 views
1

我很好奇如何寫這個,如果可能的話,作爲lambda表達式。如何爲此循環編寫Lambda表達式?

For (int i = 0; i < MyList.Count; i++) 
{ 
    MyMethod(MyList[i].Id, MyList[i].Value); 
} 

public void MyMethod(string id, string value) 
{ 
    // do kung-fu 
} 

我見過如何使用lambda表達式來調用對象的方法,但是我找不到這樣做的方法。

我意識到一個循環工作得很好。我只是想知道它是否可以完成以及如何完成。

回答

7

我不會用一個lambda表達式 - 但我使用foreach循環:

foreach (var item in MyList) 
{ 
    MyMethod(item.Id, item.Value); 
} 

如果你真的使用你可以寫:

MyList.ForEach(item => MyMethod(item.Id, item.Value)); 

...但我不會。

+0

我只是好奇它會怎麼做比什麼都重要。現在,我要看看foreach和爲了刷新我的記憶。 =)謝謝! – Yatrix 2012-07-18 15:22:24

+0

使用foreach循環與lambda版本有什麼區別/優勢? – Yatrix 2012-07-18 15:24:56