Go-simple(3)基础教程-容器类型

容器类型包括数组、切片和map。

1 数组

数组大小是固定的。
首先定义数组,代码如下:

peopleArray := [...] string{"令狐冲", "任盈盈", "东方不败"}

通过长度遍历数组:

fmt.Println("通过直接访问数组遍历:")
var i int
for i = 0; i < 3; i++ {
	fmt.Println(i, peopleArray[i])
}

输出:
在这里插入图片描述
通过range遍历数组:

fmt.Println("通过range关键字遍历:")
i = 0
for j, str := range peopleArray {
	fmt.Println(j, str)
}
fmt.Println("通过range只输出元素:")
for _, str := range peopleArray {
	fmt.Println(str)
}

输出:
在这里插入图片描述

2 切片slice

切片slice可以认为是动态数组
首先定义slice,代码如下:

pepoleSlice := [] string {"令狐冲"}

也可以make创建slice,代码如下:

var pepoleSlice = make([]string,1,1)

输出slice的长度和容量,代码如下:

    var len int = len(pepoleSlice)
	fmt.Println("切片slice的长度:", len)
	var capacity int = cap(pepoleSlice)
	fmt.Println("切片slice的容量:", capacity)

输出:
在这里插入图片描述
Slice中增加元素,代码如下:

    pepoleSlice = append(pepoleSlice, "任盈盈")
	fmt.Print("切片slice增加1个元素:")
	fmt.Println(pepoleSlice)

输出:
在这里插入图片描述
Slice中增加多个元素,代码如下:

pepoleSlice = append(pepoleSlice, "岳不群", "风清扬")
fmt.Print("切片slice增加多个元素:")
fmt.Println(pepoleSlice)

输出:
在这里插入图片描述
拷贝slice,代码如下:

pepoleSlice2 := make([]string, len, capacity)
copy(pepoleSlice2, pepoleSlice)
fmt.Print("切片slice拷贝后新的切片:")
fmt.Println(pepoleSlice2)

输出:
在这里插入图片描述
截取slice创建新的slice,代码如下:

pepoleSlice3:= pepoleSlice[0:1]
fmt.Print("切片slice截取后新的切片:")
fmt.Println(pepoleSlice3)

输出:
在这里插入图片描述

3 map

首先定义和初始化一个map,代码如下:

// 定义map
peopleMap := make(map[string]string)

// map 增加数据
peopleMap["1"] = "令狐冲"
peopleMap["2"] = "任盈盈"
peopleMap["3"] = "东方不败"

输出map,代码如下:

fmt.Println("输出map:")
for id, people := range peopleMap {
	fmt.Println(id, people)
}

输出:
在这里插入图片描述
判断元素是否存在,代码如下:

fmt.Println("判断map中元素是否存在:")
	_, ok := peopleMap ["令狐冲"]
	if (ok) {
		fmt.Println("人物存在")
	} else {
		fmt.Println("人物不存在")
	}

输出:
在这里插入图片描述
删除元素,代码如下:

    delete(peopleMap, "1")

	// 输出map
	fmt.Println("删除map中元素后:")
	for id := range peopleMap {
		fmt.Println(id, peopleMap[id])
	}

输出:
在这里插入图片描述
详见代码:
https://gitee.com/linghufeixia/go-simple
chapter2

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值