我有,目前看起來像這樣一個lambda表達式:有條件的Lambda表達式?
item => Reports.Add(item)
我想修改它,使得它是有條件的,而且基本上將檢查Reports.Contains(項目)返回false,然後執行Reports.Add (項目)行動。這是否可以在一行上使用lambda?
克里斯
我有,目前看起來像這樣一個lambda表達式:有條件的Lambda表達式?
item => Reports.Add(item)
我想修改它,使得它是有條件的,而且基本上將檢查Reports.Contains(項目)返回false,然後執行Reports.Add (項目)行動。這是否可以在一行上使用lambda?
克里斯
Action<ItemType> action = item => { if(!Reports.Contains(item)) Reports.Add(item);};
這應該做的,但它取決於你如何定義「一條線」,真的。
替代Ani的建議:使報告成爲HashSet。
同意。這聽起來像是可能需要不同的數據結構。 – 2010-10-13 19:25:37
你可以在你的lambda中用分號分隔多行。
他沒有說它必須相當可讀:) – 2010-10-13 19:21:03
謝謝 - 完美的工作! – Chris 2010-10-13 19:21:38