首页  >  文章  >  后端开发  >  Go语言切片可以多维吗

Go语言切片可以多维吗

青灯夜游
青灯夜游原创
2023-01-09 11:21:381601浏览

可以。Go语言的切片是支持多维的,声明一个多维切片的语法格式“var sliceName [][]...[]sliceType”;如果是二维切片,那么切片的每一个元素都是一个一维切片,如果切片是三维切片,那么每一个元素都是一个二维切片。

Go语言切片可以多维吗

本教程操作环境:windows7系统、GO 1.18版本、Dell G3电脑。

Go 语言的切片是支持多维的,声明一个多维切片的语法格式如下:

var sliceName [][]...[]sliceType

其中,sliceName 为切片的名字,sliceType为切片的类型,每个[ ]代表着一个维度,切片有几个维度就需要几个[ ]

如果是二维切片,那么切片的每一个元素都是一个一维切片,如果切片是三维切片,那么每一个元素都是一个二维切片。

一般我们使用最多的就是二维切片,很少用到三维切片,更多维的切片几乎更用不到。

Go语言二维切片

定义

var varName [][]Type
参数 描述
var 定义切片使用的关键字。
varName 切片名。
Type 二维切片中每个元素的类型。

说明

  • 定义一个二维切片 varName,该切片的每个元素的类型都是 Type。

Go语言三维切片

定义

var varName [][][]Type

说明

  • 定义一个三维切片 varName,该切片的每一个元素都是一个二维切片。

案例

  • 创建二维切片

创建二维切片时,可以直接初始化

package main
import (
	"fmt"
)
func main() {
	//创建二维切片时,可以直接初始化
	var sliceHaiCoder = [][]string{{"Server", "Python"}, {"Server", "Golang"}, {"JavaScript", "Vue"}}
	fmt.Println("sliceHaiCoder =", sliceHaiCoder)
}

1.png

我们创建了一个三行两列的二维切片,每个切片元素都是 string 类型,接着我们使用切片初始化的方式给切片赋值。最后,我们使用 print 打印切片的内容。

  • 创建三维切片

package main
import (
	"fmt"
)
func main() {
	//创建一个三维切片
	var arrHaiCoder = [][][]string{{{"JavaScript", "Vue"}}, {{"Python", "Golang"}}}
	fmt.Println("arrHaiCoder =", arrHaiCoder)
}

2.png

【相关推荐:Go视频教程编程教学

以上是Go语言切片可以多维吗的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn