go 切片

切片[]int 不写长度

长度动态,可随意追加元素

1. 声明切片(最基础)

复制代码
// 空切片
var 切片名 []类型
// 直接初始化(最常用)
切片名 := []类型{值1, 值2}

2. 追加元素(核心!)

append() 函数给切片加元素,自动扩容

复制代码
切片名 = append(切片名, 新元素)

3. 遍历切片(和数组一模一样)

for range 遍历

4. 切片截取(取部分元素)

复制代码
切片[起始:结束]  // 左闭右开

package main

import "fmt"

func main() {
	// 1. 声明并初始化切片(最常用)
	nums := []int{10, 20, 30}
	fmt.Println("初始切片", nums)
	fmt.Println("切片长度", len(nums)) // 当前元素个数
	fmt.Println("切片容量", cap(nums)) // 底层最大容量(底层数组)

	// 2.追加元素
	nums = append(nums, 40)  	// 追加1个
	nums = append(nums, 50,60)  // 追加2个
	fmt.Println(nums)

	// 3.访问/修改元素(和数组一样,下标从0开始)
	nums[0] = 100 // 修改第一个元素
	fmt.Println("修改后:", nums)

	// 4.遍历切片
	fmt.Println("\n===遍历切片===")
	for index, value := range nums {
		fmt.Println("下标: %d => 值 %d \n",index, value)
	}

	// 5.切片截取(取第1~3个元素,左闭右开)
	sub := nums[1:4]
	fmt.Println("\n切片截取: ", sub)


}
相关推荐
HotCoffee-GPS7 小时前
Golang性能分析pprof
golang
王的宝库17 小时前
Gin + GORM
开发语言·golang·gin
妙码生花18 小时前
golang 应用服务端部署(使用 systemd 服务)
开发语言·人工智能·后端·golang·node.js·php·gin
kcuwu.19 小时前
第 1 课 · Hello, World 与一个 Go 程序的诞生
开发语言·后端·golang
php@king19 小时前
golang入门到精通
开发语言·后端·golang
sunflower#1 天前
Go学习第五阶段:接口、泛型与包设计,实现可替换的通讯录存储层
学习·oracle·golang
ShuiShenHuoLe1 天前
golang-jwt v5 入门
开发语言·后端·golang
geovindu2 天前
go: Task Scheduler
开发语言·后端·golang
FfHUCisI2 天前
Go 内存分配器概览:从 TCMalloc 到三级缓存架构
缓存·架构·golang