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)


}
相关推荐
Reisentyan2 小时前
[Advance]GoLang Learn Data Day 4
java·数据库·golang
brycegao3212 小时前
Vue3+Go 全栈项目上线阿里云|从 0 到 1 踩坑全纪录
开发语言·阿里云·golang
会编程的土豆3 小时前
Go 里的 error 接口 + 假 nil(超级重点)
开发语言·后端·golang
basketball6164 小时前
Golang:基本输入输出使用方法总结
开发语言·golang·xcode
codeejun4 小时前
每日一Go-70、Prometheus + Grafana 从采集到告警的完整实战(Go + Kind)
golang·grafana·prometheus
会编程的土豆4 小时前
Go 里 interface 为什么能比较?到底在比什么?
开发语言·后端·golang
GDAL5 小时前
在 Windows 上做 Go 跨平台编
windows·golang
basketball6165 小时前
Golang:基础语法总结
开发语言·后端·golang
会编程的土豆5 小时前
Go 里的 init() 到底是什么(彻底理解)
开发语言·后端·golang
鹏北海-RemHusband16 小时前
Go 语言进阶笔记 — 面向 JS/TS 前端开发者
笔记·golang