国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Golang > 正文

golang實現分頁算法實例代碼

2020-04-01 18:53:10
字體:
來源:轉載
供稿:網友

前言

本文主要給大家介紹了關于golang分頁算法的相關內容,分享出來供大家參考學習,下面話不多說了,來一起看看詳細的介紹吧

示例代碼如下:

//分頁方法,根據傳遞過來的頁數,每頁數,總數,返回分頁的內容 7個頁數 前 1,2,3,4,5 后 的格式返回,小于5頁返回具體頁數func Paginator(page, prepage int, nums int64) map[string]interface{} { var firstpage int //前一頁地址 var lastpage int //后一頁地址 //根據nums總數,和prepage每頁數量 生成分頁總數 totalpages := int(math.Ceil(float64(nums) / float64(prepage))) //page總數 if page > totalpages {  page = totalpages } if page <= 0 {  page = 1 } var pages []int switch { case page >= totalpages-5 && totalpages > 5: //最后5頁  start := totalpages - 5 + 1  firstpage = page - 1  lastpage = int(math.Min(float64(totalpages), float64(page+1)))  pages = make([]int, 5)  for i, _ := range pages {   pages[i] = start + i  } case page >= 3 && totalpages > 5:  start := page - 3 + 1  pages = make([]int, 5)  firstpage = page - 3  for i, _ := range pages {   pages[i] = start + i  }  firstpage = page - 1  lastpage = page + 1 default:  pages = make([]int, int(math.Min(5, float64(totalpages))))  for i, _ := range pages {   pages[i] = i + 1  }  firstpage = int(math.Max(float64(1), float64(page-1)))  lastpage = page + 1  //fmt.Println(pages) } paginatorMap := make(map[string]interface{}) paginatorMap["pages"] = pages paginatorMap["totalpages"] = totalpages paginatorMap["firstpage"] = firstpage paginatorMap["lastpage"] = lastpage paginatorMap["currpage"] = page return paginatorMap}

測試結果如下

func main(){ pageSize := 3  var rsCount int64 = 100 currentPage := 8 res := Paginator(currentPage,pageSize,rsCount) fmt.Println(res) }

運行結果如下

map[pages:[6 7 8 9 10] totalpages:34 firstpage:7 lastpage:9 currpage:8]

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對VEVB武林網的支持。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 安阳县| 敖汉旗| 贡山| 麻城市| 南宫市| 鄂温| 湖口县| 藁城市| 雅安市| 宜宾市| 循化| 永修县| 上思县| 道真| 卢龙县| 白银市| 随州市| 泽州县| 峨眉山市| 宜宾市| 行唐县| 元阳县| 沂水县| 贺兰县| 玉环县| 宜兰市| 金山区| 信阳市| 永安市| 神农架林区| 门头沟区| 科技| 乌拉特中旗| 临城县| 石河子市| 当雄县| 静乐县| 南昌市| 古丈县| 南溪县| 古丈县|