go - 如何迭代切片,一次 4 个项目
问题描述
如何一次遍历 Go 切片 4 个项目。
可以说我有[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15]
我想要一个 for 循环能够得到
[1,2,3,4] //First Iteration
[5,6,7,8] //Second Iteration
[9,10,11,12] //Third Iteration
[13,14,15,] // Fourth Iteration
我可以在 java 和 python 中做到这一点,但对于 golang 我真的不知道。
解决方案
例如,
package main
import "fmt"
func main() {
slice := []int{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15}
for i := 0; i < len(slice); i += 4 {
var section []int
if i > len(slice)-4 {
section = slice[i:]
} else {
section = slice[i : i+4]
}
fmt.Println(section)
}
}
游乐场: https: //play.golang.org/p/kf7_OJcP13t
输出:
[1 2 3 4]
[5 6 7 8]
[9 10 11 12]
[13 14 15]
推荐阅读
- mysql - 每个应用程序的 AWS RDS CPU 配额
- c# - 如何在 Windows 窗体中将保存文件对话框作为控件
- node.js - 为什么此外键不适用于 knex 中的删除操作?
- postgresql - Liquibase:错误:CREATE DATABASE 不能在事务块内运行
- c - C 编程:为什么 printf 格式说明符 %s 对于数字“123”无效?
- sql - 根据某些条件替换列的值
- python - 遍历行以取消大写字符串单词
- python - 为什么我不能显示错误消息,因为我除外?
- javascript - 与 Prettier 不一致
- android - 资源$NotFoundException。资源 id 为 x7804000c 的布局在 apk、Android -23、Marshmallow 中不存在