[Go] 分页计算页码的主要逻辑
发布时间:2021-05-21 06:46:26 所属栏目:大数据 来源: https://www.jb51.cc
导读:当使用imap进行读取邮件体的时候,有个函数可以根据传入的开始和结束索引来一次读取多条邮件内容 主要逻辑类似这样,从1开始,1,10? ?11,20? ? ?21,30 或者 1,31? ?32,63 这样的分批处理 现在就是使用数组切片来模拟这个过程,总数据12条,每次10个,要分两次,开始
当使用imap进行读取邮件体的时候,有个函数可以根据传入的开始和结束索引来一次读取多条邮件内容 现在就是使用数组切片来模拟这个过程,总数据12条,每次10个,要分两次,开始和结束分别为,10,? 11,12 package main import ( "fmt" math" ) func main() { //定义一个10的切片,假设这是10个数据记录 var arr []int for i := 1; i <= 12; i++ { arr = append(arr,i) } 分页展示 var pagesize int = 10 var start 1 var stop int var pagecount var curpage 总页数,向上取整,注意除之前要先转换类型为float64 pagecount = int(math.Ceil(float64(len(arr)) / float64(pagesize))) for curpage = 1; curpage <= pagecount; curpage++ { if curpage == { start = } else { start = (curpage-1)*pagesize + } stop = curpage * pagesize if stop > len(arr) { stop = len(arr) } 这里就可以查看开始和结束了 fmt.Println(start,stop) } } ? (编辑:北几岛) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |