第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

解鎖即可觀看《Go開發(fā)工程師》完整課程視頻

Go開發(fā)工程師

未來3-5年企業(yè)高性能項目不可替代的語言,從基礎(chǔ)到項目實戰(zhàn)再到重構(gòu),真正從入門到精通

【第1周】Go基礎(chǔ)知識入門
【第2周】容器,go編程思想
【第3周】Go并發(fā)編程和工程管理
【第4周】從0開始理解rpc和grpc
【第5周】grpc和protobuf進(jìn)階
【第6周】 yapi文檔管理、gorm詳解
【第7周】gin快速入門
【第8周】用戶服務(wù)的grpc服務(wù)
【第9周】用戶服務(wù)的web服務(wù)
【第10周】服務(wù)注冊/發(fā)現(xiàn)、配置中心、負(fù)載均衡
【第11周】商品微服務(wù)的grpc服務(wù)
【第12周】 商品微服務(wù)的gin層和oss圖片服務(wù)
【第13周】庫存服務(wù)和分布式鎖
【第14周】訂單和購物車微服務(wù)
【第15周】 支付寶支付、用戶操作微服務(wù)、前后端聯(lián)調(diào)
【第16周】elasticsearch實現(xiàn)搜索微服務(wù)
【第17周】 分布式理論基礎(chǔ)、分布式事務(wù)解決方案
【第18周】 學(xué)習(xí)rocketmq實現(xiàn)冪等性機制等
【第19周】鏈路追蹤、限流、熔斷、降級
【第20周】api網(wǎng)關(guān)、部署
【第21周】開發(fā)規(guī)范和go基礎(chǔ)擴展
【第22周】設(shè)計模式和單元測試
【第23周】protoc插件開發(fā)、cobra命令行
【第24周】log日志包設(shè)計
【第25周】ast代碼生成工具開發(fā)
【第26周】三層代碼結(jié)構(gòu)
【第27周】grpc服務(wù)封裝更方便的rpc服務(wù)
【第28周】深入grpc的服務(wù)注冊、負(fù)載均衡原理
【第29周】基于gin封裝api服務(wù)
【第30周】可觀測的終極解決方案
【第31周】系統(tǒng)監(jiān)控核心
【第32周】用戶、商品服務(wù)重構(gòu)
【第33周】訂單、庫存等服務(wù)重構(gòu)
【第33+周】訂單服務(wù)重構(gòu)、wire進(jìn)行ioc控制
【第34周】通過k8s部署服務(wù)
【第34+周】devops和k8s
章節(jié)
問答
課簽
筆記
評論
占位
占位

Go語言-字典類型

    Go語言的字典(Map)類型其實是哈希表(Hash Table)的一個實現(xiàn)。字典用于存儲鍵-元素對(更通俗的說法是鍵-值對)的無序集合。注意,同一個字典中的每個鍵都是唯一的。如果我們在向字典中放入一個鍵值對的時候其中已經(jīng)有相同的鍵的話,那么與此鍵關(guān)聯(lián)的那個值會被新值替換。
  
    字典類型的字面量如下:

map[K]T    

    其中,“K”意為鍵的類型,而“T”則代表元素(或稱值)的類型。如果我們要描述一個鍵類型為int、值類型為string的字典類型的話,應(yīng)該這樣寫:

map[int]string    

    請注意,字典的鍵類型必須是可比較的,否則會引起錯誤。也就是說,它不能是切片、字典或函數(shù)類型。
  
    字典值的字面量表示法實際上與數(shù)組和切片的字面量表示法很相似。首先,最左邊仍然是類型字面量,右邊緊挨著由花括號包裹且有英文逗號分隔的鍵值對。每個鍵值對的鍵和值之間由英文冒號分隔。以字典類型map[int]string為例,它的值的字面量可以是這樣的:

map[int]string{1: "a", 2: "b", 3: "c"}

    我們可以把這個值賦給一個變量:

mm := map[int]string{1: "a", 2: "b", 3: "c"}    

    然后運用索引表達(dá)式取出字典中的值,就像這樣:

b := mm[2]  

    注意,在這里,我們放入方括號中的不再是索引值(實際上,字典中的鍵值對也沒有索引),而是與我們要取出的值對應(yīng)的那個鍵。在上例中變量b的值必是字符串"b"。當(dāng)然,也可以利用索引表達(dá)式來賦值,比如這樣:

mm[2] = b + "2"   

    這使得字典mm中與鍵2對應(yīng)的值變?yōu)榱?code class="marker">"b2"?,F(xiàn)在我們再來向mm添加一個鍵值對:

mm[4] = ""  

    之后,在從中取出與`4`和`5`對應(yīng)的值:

d := mm[4]
e := mm[5]  

    此時,變量de的值都會是多少呢?答案是都為"",即空字符串。對于變量d來說,由于在字典mm中與4對應(yīng)的值就是"",所以索引表達(dá)式mm[4]的求值結(jié)果必為""。這理所應(yīng)當(dāng)。但是mm[5]的求值結(jié)果為什么也是空字符串呢?原因是,在Go語言中有這樣一項規(guī)定,即:對于字典值來說,如果其中不存在索引表達(dá)式欲取出的鍵值對,那么就以它的值類型的空值(或稱默認(rèn)值)作為該索引表達(dá)式的求值結(jié)果。由于字符串類型的空值為"",所以mm[5]的求值結(jié)果即為""。
  
    在不知道mm的確切值的情況下,我們無法得知mm[5]的求值結(jié)果意味著什么?它意味著5對應(yīng)的值就是一個空字符串?還是說mm中根本就沒有鍵為5的鍵值對?這無所判別。為了解決這個問題,Go語言為我們提供了另外一個寫法,即:

e, ok := mm[5]

    針對字典的索引表達(dá)式可以有兩個求值結(jié)果。第二個求值結(jié)果是bool類型的。它用于表明字典值中是否存在指定的鍵值對。在上例中,變量ok必為false。因為mm中不存在以5為鍵的鍵值對。
  
    從字典中刪除鍵值對的方法非常簡單,僅僅是調(diào)用內(nèi)建函數(shù)delete而已,就像這樣:

delete(mm, 4)   

    無論mm中是否存在以4為鍵的鍵值對,delete都會“無聲”地執(zhí)行完畢。我們用“有則刪除,無則不做”可以很好地概括它的行為。
  
    最后,與切片類型相同,字典類型屬于引用類型。它的零值即為nil。

任務(wù)

  請在命令源碼文件index.go的第 7、8、9 行中填入相應(yīng)代碼,使程序打印到標(biāo)準(zhǔn)輸出上的內(nèi)容為:25, 50, 0。

?不會了怎么辦

    可以填入:

mm2["scala"] = 25
mm2["erlang"] = 50
delete(mm2, "python")   

    注意,答案并不是唯一的。

||

提問題

寫筆記

公開筆記
提交
||

請驗證,完成請求

由于請求次數(shù)過多,請先驗證,完成再次請求

加群二維碼

打開微信掃碼自動綁定

您還未綁定服務(wù)號

綁定后可得到

  • · 粉絲專屬優(yōu)惠福利
  • · 大咖直播交流干貨
  • · 課程更新,問題答復(fù)提醒
  • · 賬號支付安全提醒

收藏課程后,能更快找到我哦~

使用 Ctrl+D 可將課程添加到書簽

邀請您關(guān)注公眾號
關(guān)注后,及時獲悉本課程動態(tài)

舉報

0/150
提交
取消
全部 精華 我要發(fā)布
全部 我要發(fā)布
最熱 最新
只看我的

手記推薦

更多

本次提問將花費2個積分

你的積分不足,無法發(fā)表

為什么扣積分?

本次提問將花費2個積分

繼續(xù)發(fā)表請點擊 "確定"

為什么扣積分?