//定义一个结构
type Car struct {
Brand string
Age int
} func Pluck() map[int][]Car {
carMap := make(map[int][]Car)
carArr := make([]Car, 0)
carArr = append(carArr, Car{
Brand: "audi",
Age: 1,
})
carMap[1] = carArr
//如果存在键,则添追加数据
child, ok := carMap[1]
if ok {
child = append(child, Car{
Brand:"QQ",
Age:5,
})
carMap[1] = child
} else {//第一次添加数据
carArr := make([]Car, 0)
carArr = append(carArr, Car{
Brand: "audi",
Age: 1,
})
carMap[1] = carArr
}
return carMap
}
func main() {
rs := Pluck()
for _, item := range rs {
for _, child := range item {
fmt.Println(child.Brand)
}
}
}

  

go语言学习--go中的map切片的更多相关文章

  1. Go语言学习笔记十三: Map集合

    Go语言学习笔记十三: Map集合 Map在每种语言中基本都有,Java中是属于集合类Map,其包括HashMap, TreeMap等.而Python语言直接就属于一种类型,写法上比Java还简单. ...

  2. go语言学习--go中闭包

    Go语言支持匿名函数,即函数可以像普通变量一样被传递或使用. 使用方法如下: package main import ( "fmt" ) func main() { var v f ...

  3. go语言学习之路三:切片

    前面讲了变量的有关知识,这里对于其他的数据类型就不多作介绍,(和C差不多),因此重点来讨论下切片. 一.切片是引用类型,这里要稍微介绍两个概念:值类型,构造类型和引用类型 1.值类型:是一种由类型的实 ...

  4. 【原创】go语言学习(十)Map类型

    目录 声明和初始化 基本操作 map排序 map类型的切⽚片 课后作业 声明和初始化 1.map类型是⼀一个key-value的数据结构. //var a map[key的类型]value类型 var ...

  5. Go语言学习笔记(4)——数组和切片

    1 数组的特点: 长度固定.元素数据类型相同.下标从0开始 1.1 声明和初始化: var array_name [size] type         var arr1 [10] float32   ...

  6. go语言学习--go中godep的使用小结

    go中的godep 本文参考:http://www.cnblogs.com/me115/p/5528463.html#h20 http://studygolang.com/articles/4385 ...

  7. Go语言学习笔记(5)——集合Map

    集合Map map是使用hash表实现的.无序的键值对的集合!只能通过key获得value,而不能通过index. map的长度不固定,和slice一样都是引用类型.len函数适用于map,返回map ...

  8. 大一C语言学习笔记(5)---函数篇-定义函数需要了解注意的地方;定义函数的易错点;详细说明函数的每个组合部分的功能及注意事项

    博主学习C语言是通过B站上的<郝斌C语言自学教程>,对于C语言初学者来说,我认为郝斌真的是在全网C语言学习课程中讲的最全面,到位的一个,这个不是真不是博主我吹他哈,大家可以去B站去看看,C ...

  9. go语言学习--map类型的切片

    今天在项目中遇到了一个切片的map,记录下map切片的使用 package main import "fmt" func main() { // Version A: items ...

随机推荐

  1. css预处理器--sass学习($变量名)

    sass有两种形式1.scss  2.sass 一:代码的基本用法 1.变量 如果变量需要镶嵌在字符串之中,就必须需要写在#{}之中. $side : left; .rounded { border- ...

  2. Java 猜字谜游戏

    package fundmental_excise6; import java.util.Arrays; import java.util.Scanner; /** * @author : jeasi ...

  3. java截取字符串,第4位以后的字符串用*代替

    public class F { public static void main(String[] args) { /**截取字符串,第4位以后的字符串用*代替*/ String s = " ...

  4. Python开发【项目】:学员管理系统(mysql)

    需求: 用户角色,讲师\学员, 用户登陆后根据角色不同,能做的事情不同,分别如下 讲师视图: 管理班级,可创建班级,根据学员qq号把学员加入班级 可创建指定班级的上课纪录,注意一节上课纪录对应多条学员 ...

  5. Zabbix4.0报警配置-企业微信报警

    一:前期准备 1.1:企业号注册 https://qy.weixin.qq.com/  微信调用接口说明 http://qydev.weixin.qq.com/wiki/index.php?title ...

  6. Problem E: 平面上的点——Point类 (V)

    Description 在数学上,平面直角坐标系上的点用X轴和Y轴上的两个坐标值唯一确定.现在我们封装一个“Point类”来实现平面上的点的操作. 根据“append.cc”,完成Point类的构造方 ...

  7. JDBC遇到向ORACLE数据库表执行插入操作时,报错“列在此处不允许”

    此异常的原因在于,编写的SQL语句,其中的变量已经成了字符串,这种情况对数值类数据没有影响,但是对字符串类数据有影响,应该在SQL语句中的字符串类变量左右两边加上单引号.如下:

  8. 剑指Offer 14. 链表中倒数第k个结点 (链表)

    题目描述 输入一个链表,输出该链表中倒数第k个结点. 题目地址 https://www.nowcoder.com/practice/529d3ae5a407492994ad2a246518148a?t ...

  9. ubuntu16.04 配置双网卡机器

    本文介绍一台具有双有线网卡的机器在Linux下如何配置双网卡 系统平台:Ubuntu16.04 1:查看机器网卡信息,是否双网卡都能正确被机器pci识别 可以通过以下命令查看设备网卡,若果看到两条网卡 ...

  10. C# 实现CRC16校验

    前言 本文将使用一个NuGet公开的组件技术来实现CRC16校验功能,提供了一些简单的API,来方便的实现. 在Visual Studio 中的NuGet管理器中可以下载安装,也可以直接在NuGet控 ...