我創建了一個Func<int[], decimal>
,總結所有元素的int數組:LINQ的兩步Func鍵一行拉姆達
Func<int[], decimal> testFunc1 = delegate(int[] intArr)
{
int[] filter = intArr.Where(i => i > 0).ToArray();
decimal r = intArr.Where(i => filter.Contains(i)).Sum();
return r;
};
我怎樣才能凝結下來的東西,可以通過
消耗Enumerable.Sum(TSource, Func<TSource, Decimal>)
我想這一點,但我發現從lambda表達式,說我不能轉換類型bool
鍵入一個智能感知錯誤decimal
:
decimal result2 = testInt.Sum(i => i > 0);
順便說一句,有什麼用INT的'[] tempResult = intArr.Where(I => filter.Contains (i))ToArray();'這個語句。 – din
對不起,不應該包括在內。我會刪除,這是模糊的問題。 –