利用linq的Take Skip方法解决 集合拆分的问题

时间:2023-03-09 00:56:45
利用linq的Take  Skip方法解决 集合拆分的问题
        public static void Main(string[] args)
{
List<string> list = new List<string>();
for (int i = ; i < ; i++)
{
list.Add(i.ToString());
}
Console.WriteLine("集合的长度:"+" "+list.Count);
Console.ReadKey();
List<List<string>> bigList = new List<List<string>>();
int pageSize = ;
int allPage = (list.Count-) / pageSize + ;
//int curPage = 1;
for (int curPage = ; curPage <= allPage; curPage++)
{
List<string> smallList = new List<string>();
smallList = list.Take(pageSize * curPage).Skip(pageSize*(curPage - )).ToList();
bigList.Add(smallList);
}
       
        //另外一种写法
       
       for (int curPage = ; curPage < allPage; curPage++)
{
List<string> smllList = list.Skip(pageSize * i).Take(pageSize).ToList();
         bigList.Add(smallList);
}

  

 
            Console.WriteLine("bigList 的容量" + bigList.Count);

            for (int i = ; i<bigList.Count;i++)
{
Console.WriteLine(string.Format("bigList[{0}]", i)+"的容量为: " + bigList[i].Count.ToString());
}
Console.ReadKey();
}