将列表分成多个列表

前端之家收集整理的这篇文章主要介绍了将列表分成多个列表前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个我发送到队列的字符串列表.我需要拆分列表,以便最终列出一个列表,其中每个列表包含一个最大(用户定义的)数量的字符串.所以例如,如果我有一个列表,具有以下A,B,C,D,E,F,G,H,I和列表的最大大小是4,我想要列出一个列表,第一个列表项包含:A,第二个列表有:E,最后一个列表项包含:I.我查看了“TakeWhile”函数,但不知道是否这是最好的方法.有人得到了解决方案吗?

解决方法

您可以设置列表< IEnumerable< string>>然后使用Skip和Take来分割列表:
IEnumerable<string> allStrings = new[] { "A","B","C","D","E","F","G","H","I" };

List<IEnumerable<string>> listOfLists = new List<IEnumerable<string>>();
for (int i = 0; i < allStrings.Count(); i += 4)
{                
    listOfLists.Add(allStrings.Skip(i).Take(4)); 
}

现在listOfLists将包含列表的列表.

原文链接:https://www.f2er.com/csharp/96261.html

猜你在找的C#相关文章