教程集 www.jiaochengji.com
教程集 >  Golang编程  >  golang教程  >  正文 golang 中 map 的使用

golang 中 map 的使用

发布时间:2022-02-02   编辑:jiaochengji.com
教程集为您提供golang 中 map 的使用等资源,欢迎您收藏本站,我们将为您提供最新的golang 中 map 的使用资源
<svg xmlns="http://www.w3.org/2000/svg" style="display: none;"><path stroke-linecap="round" d="M5,0 0,2.5 5,5z" id="raphael-marker-block" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);"/></svg><h4>golang 中 map 的初始化方式</h4> <pre><code class="lang-go hljs"><span class="token comment">// (1)先声明 map</span> <span class="token keyword">var</span> m1 <span class="token keyword">map</span><span class="token punctuation">[</span><span class="token builtin">int</span><span class="token punctuation">]</span><span class="token builtin">int</span> <span class="token comment">// 再使用make函数创建一个非nil的map,nil map不能赋值</span> m1 <span class="token operator">=</span> <span class="token function">make</span><span class="token punctuation">(</span><span class="token keyword">map</span><span class="token punctuation">[</span><span class="token builtin">int</span><span class="token punctuation">]</span><span class="token builtin">int</span><span class="token punctuation">)</span> <span class="token comment">// 赋值</span> m1<span class="token punctuation">[</span><span class="token number">66</span><span class="token punctuation">]</span> <span class="token operator">=</span> <span class="token number">55</span> fmt<span class="token punctuation">.</span><span class="token function">Println</span><span class="token punctuation">(</span>m1<span class="token punctuation">)</span> <span class="token comment">// map[66:55]</span> <span class="token comment">// (2)直接 make 创建</span> m2 <span class="token operator">:=</span> <span class="token function">make</span><span class="token punctuation">(</span><span class="token keyword">map</span><span class="token punctuation">[</span><span class="token builtin">string</span><span class="token punctuation">]</span><span class="token builtin">string</span><span class="token punctuation">)</span> <span class="token comment">// 赋值</span> m2<span class="token punctuation">[</span><span class="token string">"hello"</span><span class="token punctuation">]</span> <span class="token operator">=</span> <span class="token string">"world"</span> fmt<span class="token punctuation">.</span><span class="token function">Println</span><span class="token punctuation">(</span>m2<span class="token punctuation">)</span> <span class="token comment">// map[hello:world]</span> <span class="token comment">// (3)初始化 赋值一体化</span> m3 <span class="token operator">:=</span> <span class="token keyword">map</span><span class="token punctuation">[</span><span class="token builtin">float32</span><span class="token punctuation">]</span><span class="token builtin">float32</span><span class="token punctuation">{</span><span class="token punctuation">}</span> <span class="token comment">// 赋值为空</span> fmt<span class="token punctuation">.</span><span class="token function">Println</span><span class="token punctuation">(</span>m3<span class="token punctuation">)</span> <span class="token comment">// map[]</span> m31 <span class="token operator">:=</span> <span class="token keyword">map</span><span class="token punctuation">[</span><span class="token builtin">float64</span><span class="token punctuation">]</span><span class="token builtin">float64</span><span class="token punctuation">{</span> <span class="token number">3.14</span><span class="token punctuation">:</span> <span class="token number">3.1415</span><span class="token punctuation">,</span> <span class="token number">2.71</span><span class="token punctuation">:</span> <span class="token number">2.7131</span><span class="token punctuation">,</span> <span class="token punctuation">}</span> fmt<span class="token punctuation">.</span><span class="token function">Println</span><span class="token punctuation">(</span>m31<span class="token punctuation">)</span> <span class="token comment">// map[2.71:2.7131 3.14:3.1415]</span> </code></pre> <h4>其他操作</h4> <pre><code class="lang-go hljs"><span class="token comment">// 遍历 // map range 遍历为无序输出,内部做了随机</span> <span class="token keyword">for</span> k<span class="token punctuation">,</span> v <span class="token operator">:=</span> <span class="token keyword">range</span> m31 <span class="token punctuation">{</span> fmt<span class="token punctuation">.</span><span class="token function">Println</span><span class="token punctuation">(</span>k<span class="token punctuation">,</span> v<span class="token punctuation">)</span> <span class="token punctuation">}</span> <span class="token comment">// 查找键值是否存在</span> <span class="token keyword">if</span> v<span class="token punctuation">,</span> ok <span class="token operator">:=</span> m31<span class="token punctuation">[</span><span class="token number">111</span><span class="token punctuation">]</span><span class="token punctuation">;</span> ok <span class="token punctuation">{</span> fmt<span class="token punctuation">.</span><span class="token function">Println</span><span class="token punctuation">(</span>v<span class="token punctuation">)</span> <span class="token punctuation">}</span> <span class="token keyword">else</span> <span class="token punctuation">{</span> fmt<span class="token punctuation">.</span><span class="token function">Println</span><span class="token punctuation">(</span><span class="token string">"Key Not Found"</span><span class="token punctuation">)</span> <span class="token punctuation">}</span> <span class="token comment">// 删除单个 key (不会回收内存)</span> <span class="token function">delete</span><span class="token punctuation">(</span>m31<span class="token punctuation">,</span> <span class="token number">3.14</span><span class="token punctuation">)</span> <span class="token comment">// 清空</span> m31 <span class="token operator">=</span> <span class="token boolean">nil</span> fmt<span class="token punctuation">.</span><span class="token function">Println</span><span class="token punctuation">(</span>m31<span class="token punctuation">)</span> </code></pre> 到此这篇关于“golang 中 map 的使用”的文章就介绍到这了,更多文章或继续浏览下面的相关文章,希望大家以后多多支持JQ教程网!

您可能感兴趣的文章:
Golang从入门到放弃200618--Map(1)Map的初始化和基本操作
golang中map声明及初始化
golang map中结构体元素是无法取地址的
golang 初始化并赋值_golang语言中map的初始化及使用示范
golang map
golang 并发访问map遇到的问题
golang map key 正则表达_Golang中的Map
golang:map
Golang的map并发安全
golang map笔记

[关闭]
~ ~