中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁(yè) > news >正文

網(wǎng)站結(jié)構(gòu)與導(dǎo)航設(shè)計(jì)/石景山區(qū)百科seo

網(wǎng)站結(jié)構(gòu)與導(dǎo)航設(shè)計(jì),石景山區(qū)百科seo,網(wǎng)站建設(shè)教程 作業(yè),建設(shè)工程交易網(wǎng)站文章目錄Go語(yǔ)言中的map集合1-1 定義1-2 map遍歷1-3 map集合刪除1-4 map是引用類(lèi)型Go語(yǔ)言中的map集合 Go 語(yǔ)言提供了內(nèi)置類(lèi)型 map集合,它將一個(gè)值與一個(gè)鍵關(guān)聯(lián)起來(lái),可以使用相應(yīng)的鍵檢索值。 map是一種集合,可以像遍歷數(shù)組或切片那樣去遍歷它…

文章目錄

  • Go語(yǔ)言中的map集合
    • 1-1 定義
    • 1-2 map遍歷
    • 1-3 map集合刪除
    • 1-4 map是引用類(lèi)型

Go語(yǔ)言中的map集合

Go 語(yǔ)言提供了內(nèi)置類(lèi)型 map集合,它將一個(gè)值與一個(gè)鍵關(guān)聯(lián)起來(lái),可以使用相應(yīng)的鍵檢索值。

  • map是一種集合,可以像遍歷數(shù)組或切片那樣去遍歷它。因?yàn)閙ap是由Hash表實(shí)現(xiàn)的,所以對(duì)map的讀取順序不固定。
  • map是無(wú)序的,每次打印出來(lái)的map都會(huì)不一樣,它不能通過(guò)index獲取,而必須通過(guò)key獲取。
  • map的長(zhǎng)度是不固定的,和切片一樣可以擴(kuò)展。

內(nèi)置的len()函數(shù)同樣適用于map,返回map擁有的鍵值對(duì)的數(shù)量。但是map不能通過(guò)cap()函數(shù)計(jì)算容量(或者說(shuō)cap()函數(shù)的參數(shù)不可以是map)。
同一個(gè)map中key必須保證唯一。key的數(shù)據(jù)類(lèi)型必須是可參與比較運(yùn)算的類(lèi)型,也就是支持==或!=操作的類(lèi)型,如布爾型、整型、浮點(diǎn)型、字符串、數(shù)組。切片、函數(shù)等引用類(lèi)型則不能作為key的數(shù)據(jù)類(lèi)型。
map的value可以是任何數(shù)據(jù)類(lèi)型。map和切片一樣,也是一種引用類(lèi)型。

1-1 定義

  • map聲明
    • 使用make()函數(shù):變量名 := make(map[key類(lèi)型]value類(lèi)型)
      • 該聲明方式,如果不初始化map,map也不等于nil。
    • 使用var關(guān)鍵字定義map:var 變量名 map[key類(lèi)型] value類(lèi)型
      • 使用var關(guān)鍵字聲明map,未初始化的map的默認(rèn)值是nil。
      • nil map不能存放鍵值對(duì)。
      • 如果要使用map存儲(chǔ)鍵值對(duì),必須在聲明時(shí)初始化,或者使用make()函數(shù)分配到內(nèi)存空間。

1-2 map遍歷

  • map的初始化賦值和遍歷
package mainimport "fmt"func main() {//1、聲明時(shí)同時(shí)初始化var country = map[string]string{"China":  "Beijing","Japan":  "Tokyo","India":  "New Delhi","France": "Paris","Italy":  "Rome",}fmt.Println(country)// 短變量聲明初始化方式rating := map[string]float64{"c": 5, "Go": 4.5, "Python": 4.5, "C++": 3}fmt.Println(rating)//2、創(chuàng)建map后再賦值countryMap := make(map[string]string)countryMap["China"] = "Beijing"countryMap["Japan"] = "Tokyo"countryMap["India"] = "New Delhi"countryMap["France"] = "Paris"countryMap["Italy"] = "Rome"//3、遍歷map(無(wú)序)//(1)、key 、value都遍歷for k, v := range countryMap {fmt.Println("國(guó)家", k, "首都", v)}fmt.Println("-----------")//(2)、只展示valuefor _, v := range countryMap {fmt.Println("國(guó)家", "首都", v)}fmt.Println("-----------")//(3)、只展示keyfor k := range countryMap {fmt.Println("國(guó)家", k, "首都", countryMap[k])}
}
  • 查看元素在集合中是否存在
    • 可以通過(guò)key獲取map中對(duì)應(yīng)的value值。語(yǔ)法為:map[key]。
    • 當(dāng)key不存在時(shí),會(huì)得到該value值類(lèi)型的默認(rèn)值,比如string類(lèi)型得到空字符串,int類(lèi)型得到0,程序不會(huì)報(bào)錯(cuò)。
    • 可以通過(guò)value, ok := map[key]獲知key/value是否存在。ok是bool型,如果ok是true,則該鍵值對(duì)存在,否則不存在。
package mainimport "fmt"func main() {countryMap := make(map[string]string)countryMap["China"] = "Beijing"countryMap["Japan"] = "Tokyo"countryMap["India"] = "New Delhi"countryMap["France"] = "Paris"countryMap["Italy"] = "Rome"//查看元素是否在map中存在value, ok := countryMap["England"]fmt.Printf("%q \n", value)fmt.Printf("%T , %v \n", ok, ok)if ok {fmt.Println("首都:", value)} else {fmt.Println("首都信息未檢索到!")}//或者if value, ok := countryMap["USA"]; ok {fmt.Println("首都:", value)} else {fmt.Println("首都信息未檢索到!")}
}

1-3 map集合刪除

  • delete(map, key) 函數(shù)用于刪除集合的某個(gè)元素,參數(shù)為map和其對(duì)應(yīng)的key。刪除函數(shù)不返回任何值。

  • Go語(yǔ)言沒(méi)有為map提供清空所有元素的函數(shù),清空map的唯一辦法是重新make一個(gè)新的map。不用擔(dān)心垃圾回收的效率,Go語(yǔ)言的垃圾回收比寫(xiě)一個(gè)清空函數(shù)更高效。

package mainimport "fmt"func main() {//1、聲明并初始化一個(gè)mapmap1 := map[string]string{"element":    "div","width":      "100px","height":     "200px","border":     "solid","background": "none",}//2、根據(jù)key刪除map中的某個(gè)元素fmt.Println("刪除前:", map1)if _, ok := map1["background"]; ok {delete(map1, "background")}fmt.Println("刪除后:", map1)//3、清空map//map1 = map[string]string{}map1 = make(map[string]string)fmt.Println("清空后:", map1)
}

1-4 map是引用類(lèi)型

  • map與切片相似,都是引用類(lèi)型。將一個(gè)map賦值給一個(gè)新的變量時(shí),它們指向同一塊內(nèi)存(底層數(shù)據(jù)結(jié)構(gòu))。修改兩個(gè)變量的內(nèi)容都能夠引起它們所指向的數(shù)據(jù)發(fā)生變化。
package mainimport "fmt"func main() {personSalary := map[string]int{"Steven": 18000,"Daniel": 5000,"Josh":   20000,}fmt.Println("原始薪資:", personSalary)newPersonSalary := personSalarynewPersonSalary["Daniel"] = 8000fmt.Println("修改后newPersonSalary:", newPersonSalary)fmt.Println("personSalary受影響情況:", personSalary)
}

雖然就底層而言,所有的數(shù)據(jù)都是由比特組成,但計(jì)算機(jī)一般操作的是固定大小的數(shù),如整型、浮點(diǎn)型、布爾型、字符串、字符(byte、rune)等。進(jìn)一步將這些數(shù)組織在一起,就可表達(dá)更多的對(duì)象。

Go語(yǔ)言提供了豐富的數(shù)據(jù)組織形式,這依賴(lài)于Go語(yǔ)言?xún)?nèi)置的數(shù)據(jù)類(lèi)型。這些內(nèi)置的數(shù)據(jù)類(lèi)型,如函數(shù)與指針、數(shù)組、切片、map等,兼顧了硬件的特性和表達(dá)復(fù)雜數(shù)據(jù)結(jié)構(gòu)的便捷性。

http://www.risenshineclean.com/news/430.html

相關(guān)文章:

  • 做網(wǎng)站用什么ps軟件/朋友圈營(yíng)銷(xiāo)
  • 沭陽(yáng)奧體小區(qū)做網(wǎng)站/廣州專(zhuān)業(yè)網(wǎng)絡(luò)推廣公司
  • 申報(bào)城市維護(hù)建設(shè)稅上哪個(gè)網(wǎng)站/網(wǎng)站運(yùn)營(yíng)工作內(nèi)容
  • 武義網(wǎng)站建設(shè)/互聯(lián)網(wǎng)營(yíng)銷(xiāo)師培訓(xùn)機(jī)構(gòu)
  • 公益網(wǎng)站建設(shè)需求/大數(shù)據(jù)分析師
  • 沈陽(yáng)網(wǎng)站建設(shè)建設(shè)公司/怎么創(chuàng)建網(wǎng)站平臺(tái)
  • 霸州放心的網(wǎng)絡(luò)建站/愛(ài)戰(zhàn)網(wǎng)關(guān)鍵詞查詢(xún)網(wǎng)站
  • 寧波免費(fèi)網(wǎng)頁(yè)制作模板/曹操博客seo
  • app store官方正版下載/班級(jí)優(yōu)化大師簡(jiǎn)介
  • 怎么防止網(wǎng)站被鏡像/nba賽季排名
  • 政府網(wǎng)站建設(shè)工作總結(jié)報(bào)告/網(wǎng)店代運(yùn)營(yíng)公司靠譜嗎
  • 廣州做營(yíng)銷(xiāo)型網(wǎng)站/網(wǎng)絡(luò)營(yíng)銷(xiāo)師證書(shū)含金量
  • 網(wǎng)站怎樣續(xù)費(fèi)/南寧seo教程
  • 制作公司網(wǎng)站哪個(gè)好/廣告投放運(yùn)營(yíng)主要做什么
  • 果女做拍的視頻網(wǎng)站/網(wǎng)站優(yōu)化外包費(fèi)用
  • 企業(yè)網(wǎng)站設(shè)計(jì)中應(yīng)注意產(chǎn)品發(fā)布功能優(yōu)化/種子搜索引擎 磁力天堂
  • 桂林手機(jī)網(wǎng)站制作/官網(wǎng)設(shè)計(jì)公司
  • 網(wǎng)站技術(shù)可行性/立即優(yōu)化在哪里
  • 全國(guó)做網(wǎng)站的公司/做推廣哪個(gè)平臺(tái)效果好
  • 簡(jiǎn)單展示網(wǎng)站模板/百度搜索官網(wǎng)
  • wordpress頁(yè)面markdown/seo品牌
  • 三明網(wǎng)站優(yōu)化/推廣優(yōu)化網(wǎng)站排名
  • 有哪些攝影網(wǎng)站/站長(zhǎng)工具源碼
  • 建設(shè)網(wǎng)站成本預(yù)算/青島疫情最新情況
  • 外貿(mào)網(wǎng)站使用攻略/自己開(kāi)網(wǎng)店怎么運(yùn)營(yíng)
  • 企業(yè)網(wǎng)站要更新文章嗎/域名注冊(cè)查詢(xún)?nèi)肟?/a>
  • 支付網(wǎng)站建設(shè)費(fèi)/正規(guī)的培訓(xùn)學(xué)校
  • 網(wǎng)站關(guān)鍵詞庫(kù)如何做/惠州seo推廣外包
  • 做網(wǎng)站jsp和php/成功營(yíng)銷(xiāo)十大經(jīng)典案例
  • 網(wǎng)站子頁(yè)面如何做seo/信息流優(yōu)化師工作總結(jié)