在MoreLinq project's source中,我看到了以下代码:
public static IEnumerable<TSource> DistinctBy<TSource, TKey>(this IEnumerable<TSource> source,
Func<TSource, TKey> keySelector, IEqualityComparer<TKey> comparer)
{
if (source == null) throw new ArgumentNullException(nameof(source));
if (keySelector == null) throw new ArgumentNullException(nameof(keySelector));
return _(); IEnumerable<TSource> _()
{
var knownKeys = new HashSet<TKey>(comparer);
foreach (var element in source)
{
if (knownKeys.Add(keySelector(element)))
yield return element;
}
}
}
我从未见过这样的return
构造。 _()
是什么意思,以及如何使用它?
由于我无法命名此块,I didn't found any reference。
答案 0 :(得分:0)
这只是一个名为_
的方法,例如:
public int _()
{
//some code here
}