微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

将列表分成多个列表

我有一个我发送到队列的字符串列表.我需要拆分列表,以便最终列出一个列表,其中每个列表包含一个最大(用户定义的)数量的字符串.所以例如,如果我有一个列表,具有以下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.jb51.cc/csharp/96261.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐