go map类型

soledad · · 996 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。
map结构,个人觉得可以和php的array就是一个样,是一个key-value的hash结构。在go中key可以是除了func,array,slice,map类型之外的类型

简单使用:

 m:=map[string]string{}
 m["key1"]="val1"

map结构和slice是一样的,是一个指针。赋值的时候是将指针复制给新的变量

map 的增删改查操作:

package  main

import "fmt"

func main(){
   m:=map[string]string{"key1":"value"}
   fmt.Println(m)

   m["key2"]="value2"
   fmt.Println(m)

   p:=m["key1"]
   fmt.Println(p)

   delete(m,"key1")
   fmt.Println(m)

}

new和make区别

new(T) 可以用来创建普通类型,返回一个指向初始化T值的指针。
make(S) 只能用来创建slice,map,channel。返回一个初始化的S值(相当于指针)。

本文来自:Segmentfault

感谢作者:soledad

查看原文:go map类型

入群交流(和以上内容无关):Go中文网 QQ 交流群:729884609 或加微信入微信群:274768166 备注:入群;关注公众号:Go语言中文网

996 次点击  
加入收藏 微博
1 回复  |  直到 2018-02-05 19:30:39
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传