Class order {
Guid Id;
int qty;
}
qty
LINQ式を使用して、リスト内のすべての注文で同じであるかどうかを確認するにはどうすればよいですか?
前もって感謝します!
使用できますGroupBy
:
bool allEqual = orders.GroupBy(o => o.qty).Count() == 1;
または、少し効率的ですが、読みにくくなります。
bool allEqual = !orders.GroupBy(o => o.qty).Skip(1).Any();
または、次を使用すると間違いなくより効率的Enumerable.All
です。
int firstQty = orders.First().qty; // fyi: throws an exception on an empty sequence
bool allEqual = orders.All(o => o.qty == firstQty);