2019-01-11
服务器数据总分页数量算法(pageSize,currentPage,totalRow,totalPage)
APP页码递增算法
APP数据去重
1、前言
APP列表数据加载算法不同于网页的数据加载算法。通常APP都是用使用一个列表组件来渲染列表数据,数据通常都是数组的形式,每一行都是一个Item。渲染数据通常又会设计到分页,手指往上滑动,列表组件到底部的时候会加载下一页的数据,绝大多数APP都是这么实现数据加载的。
2、服务器数据总分页数量算法
APP向服务器查询数据,服务器查出列表数据后,会根据APP传递的pageNumber来计算要返回给APP的指定页码数据,同时还要根据pageSize计算总分页数量。这个总分数目算法很关键,因为它关系到APP页码的递增。
算法是这样的:我们定义列表数据总数量为totalRow,每一页数据数量为pageSize,总分页数目为totalPage;
(1)当totalRow % pageSize != 0时,totalPage = totalRow /pageSize +1;
(2)当totalRow % pageSize == 0时,totalPage = totalRow /pageSize;
为什么totalRow % pageSize != 0时要加1呢?我们来举个例子,当列表数据总数量totalRow=17,pageSize = 15时,这个时候totalPage应该