0

我的代码中有几个地方我想获得一个可枚举的集合,其中包含第一个元素、前 2 个元素、集合的前 3 个元素等等。

public static IEnumerable<IEnumerable<TSource>> SomeFunc<TSource>(this IEnumerable<TSource> source)
{
    if(source.Any())
    {
        return Enumerable.Range(1, source.Count()).Select(c => source.Take(c));
    }
    else
    {
        return Enumerable.Empty<IEnumerable<TSource>>();;
    }
}

这个函数的好名字是什么?

4

2 回答 2

1

不是一个有明确正确答案的问题,但正如我之前评论的那样Prefixes<T>(),它可能是一个合适的名称。例如,字符串的前缀是单词前缀。

var x = Prefixes("Dog", 2);

将是单词 prefixes { "D", "Do" }

于 2013-07-06T11:23:06.903 回答
0

我总是使用最能描述函数功能的名称。它应该始终是自我记录的。所以在你的情况下,我会建议像

GetCollectionOfInitialCharacters
于 2013-07-06T11:32:32.487 回答