當使用imap進行讀取郵件體的時候,有個函數能夠根據傳入的開始和結束索引來一次讀取多條郵件內容
主要邏輯相似這樣,從1開始, 1,10 11,20 21,30 或者 1,31 32,63 這樣的分批處理數組
如今就是使用數組切片來模擬這個過程,總數據12條,每次10個,要分兩次,開始和結束分別爲,1,10, 11,12app
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 int = 1 var stop int var pagecount int var curpage int //總頁數,向上取整,注意除以前要先轉換類型爲float64 pagecount = int(math.Ceil(float64(len(arr)) / float64(pagesize))) for curpage = 1; curpage <= pagecount; curpage++ { if curpage == 1 { start = 1 } else { start = (curpage-1)*pagesize + 1 } stop = curpage * pagesize if stop > len(arr) { stop = len(arr) } //這裏就能夠查看開始和結束了 fmt.Println(start, stop) } }