如何根据 C# 中的条件从 HashSet 中获取项目

How to obtain an item from HashSet depending on a condition in c#

在c#中,对于List数据结构,我们可以通过List.Find(Predicate)或List.FindAll(Predicate)方法将条件指定为lambda表达式,用于查找单个或多个元素。有没有办法用HashSet做类似的操作?

因为 HashSet implements the IEnumerable interface, you can use extension methods like Where.

所以:

var matches = yourHashSet.Where(item => predicate(item));

应该可以。

如果你想要多个结果,你可以使用 Where 方法:

hash.Where(x => Predicate(x));

如果你想要一个结果,你可以使用FirstOrDefault方法

hash.FirstOrDefault(x => Predicate(x));