方法一:

//num:子集合数
//List:原集合  
//listGroup:子集合的集合
List<List<string>> listGroup = new List<List<string>>();
listGroup = List.GroupBy(i => int.Parse(i) % num).Select(g => g.ToList()).ToList();
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.

上面的看不懂可以看下方法二,算是对方法一的一种解读。

方法二:

1 // num:子集合中元素的个数
 2 // yList:原集合
 3 // listGroup:子集合的集合
 4 List<List<string>> listGroup = new List<List<string>>();
 5 int j = num;
 6 for (int i = 0; i < yList.Count; i += num)
 7 {
 8     List<string> cList = new List<string>();
 9     cList = yList.Take(j).Skip(i).ToList();
10     j += num;
11     listGroup.Add(cList);
12 }
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.

作者:꧁执笔小白꧂