您的问题似乎不完整,您是想询问关于C语言编程的某个具体问题吗?比如C语言的语法、编程技巧、项目开发等。请提供更具体的信息,这样我才能给出更准确的回答。

2026-03-30 14:091阅读0评论SEO基础
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计358个文字,预计阅读时间需要2分钟。

您的问题似乎不完整,您是想询问关于C语言编程的某个具体问题吗?比如C语言的语法、编程技巧、项目开发等。请提供更具体的信息,这样我才能给出更准确的回答。

方案一:采用C语言实现。

方案一:使用C#的List的GetRange方法实现

/// <summary>

///使用List的GetRange方法实现

/// </summary>

/// <typeparam name="T"></typeparam>

/// <param name="data"></param>

/// <param name="pageIndex">起始值1开始</param>

/// <param name="pageSize"></param>

/// <returns></returns>

public static List<T> subList<T>(List<T> data, int pageNum, int pageSize)

{

//总数

var totalCount = data.Count;

//总页数算法

var totalPage = totalCount % pageSize == 0 ? totalCount / pageSize : totalCount / pageSize + 1;

var startIndex = (pageNum - 1) * pageSize;

var endIndex = pageNum * pageSize > totalCount ? totalCount - startIndex : pageSize;

var list = data.GetRange(startIndex, endIndex);

System.Diagnostics.Debug.Write(JsonHelper .Serialize(list) + "\n");

return list;

}

方案二:使用C#的List的.Skip().Take()方法

/// <summary>

/// List分页处理

/// </summary>

/// <typeparam name="T"></typeparam>

/// <param name="_list"></param>

/// <param name="PageIndex"></param>

/// <param name="PageSize"></param>

/// <returns></returns>

public static List<T> SplitList<T>(List<T> _list, int PageIndex, int PageSize)

{

int _PageIndex = PageIndex == 0 ? 1 : PageIndex;

int _PageSize = PageSize == 0 ? 20 : PageSize;

int PageConut = (int)Math.Ceiling(Convert.ToDecimal(_list.Count) / _PageSize);

if (PageConut >= _PageIndex)

{

List<T> list = new List<T>();

list = _list.Skip((_PageIndex - 1) * _PageSize).Take(_PageSize).ToList();

return list;

}

else

您的问题似乎不完整,您是想询问关于C语言编程的某个具体问题吗?比如C语言的语法、编程技巧、项目开发等。请提供更具体的信息,这样我才能给出更准确的回答。

return _list;

}


本文共计358个文字,预计阅读时间需要2分钟。

您的问题似乎不完整,您是想询问关于C语言编程的某个具体问题吗?比如C语言的语法、编程技巧、项目开发等。请提供更具体的信息,这样我才能给出更准确的回答。

方案一:采用C语言实现。

方案一:使用C#的List的GetRange方法实现

/// <summary>

///使用List的GetRange方法实现

/// </summary>

/// <typeparam name="T"></typeparam>

/// <param name="data"></param>

/// <param name="pageIndex">起始值1开始</param>

/// <param name="pageSize"></param>

/// <returns></returns>

public static List<T> subList<T>(List<T> data, int pageNum, int pageSize)

{

//总数

var totalCount = data.Count;

//总页数算法

var totalPage = totalCount % pageSize == 0 ? totalCount / pageSize : totalCount / pageSize + 1;

var startIndex = (pageNum - 1) * pageSize;

var endIndex = pageNum * pageSize > totalCount ? totalCount - startIndex : pageSize;

var list = data.GetRange(startIndex, endIndex);

System.Diagnostics.Debug.Write(JsonHelper .Serialize(list) + "\n");

return list;

}

方案二:使用C#的List的.Skip().Take()方法

/// <summary>

/// List分页处理

/// </summary>

/// <typeparam name="T"></typeparam>

/// <param name="_list"></param>

/// <param name="PageIndex"></param>

/// <param name="PageSize"></param>

/// <returns></returns>

public static List<T> SplitList<T>(List<T> _list, int PageIndex, int PageSize)

{

int _PageIndex = PageIndex == 0 ? 1 : PageIndex;

int _PageSize = PageSize == 0 ? 20 : PageSize;

int PageConut = (int)Math.Ceiling(Convert.ToDecimal(_list.Count) / _PageSize);

if (PageConut >= _PageIndex)

{

List<T> list = new List<T>();

list = _list.Skip((_PageIndex - 1) * _PageSize).Take(_PageSize).ToList();

return list;

}

else

您的问题似乎不完整,您是想询问关于C语言编程的某个具体问题吗?比如C语言的语法、编程技巧、项目开发等。请提供更具体的信息,这样我才能给出更准确的回答。

return _list;

}