濮阳杆衣贸易有限公司

主頁(yè) > 知識(shí)庫(kù) > Go 容器遍歷的實(shí)現(xiàn)示例

Go 容器遍歷的實(shí)現(xiàn)示例

熱門標(biāo)簽:武漢百應(yīng)人工智能電銷機(jī)器人 電腦外呼系統(tǒng)輻射大嗎 開通400電話申請(qǐng)流程 如何利用高德地圖標(biāo)注家 百度地圖標(biāo)注位置網(wǎng)站 智能語(yǔ)音電銷的機(jī)器人 上海企業(yè)外呼系統(tǒng)排名 揚(yáng)州電銷外呼系統(tǒng)軟件 400手機(jī)電話免費(fèi)辦理

前文回顧

前面的文章主要介紹了 Go 語(yǔ)言中提供了 list 列表和 Map 映射關(guān)系容器,這兩種容器都是我們?nèi)粘=?jīng)常使用到的。介紹了好多種的 Go 語(yǔ)言提供的基礎(chǔ)容器,免不了要查詢?nèi)萜髦械臄?shù)據(jù),那么是如何實(shí)現(xiàn)遍歷的呢?本文將會(huì)介紹幾種常用容易的遍歷及其使用。

容器遍歷

Go 語(yǔ)言中 range 關(guān)鍵字用于 for 循環(huán)中迭代數(shù)組(array)、切片(slice)、通道(channel)或集合(map)的元素。在數(shù)組和切片中它返回元素的索引和索引對(duì)應(yīng)的值,在集合中返回 key-value 對(duì)。
遍歷對(duì)于很多 Golang 的內(nèi)置容器來(lái)說(shuō),形式都是基本一致的,主要通過(guò) for-range 語(yǔ)法,我們將通過(guò)以下的例子分別展示數(shù)組、切片和字典的遍歷過(guò)程,代碼如下所示:

package main

import "fmt"

func main()  {

 // 數(shù)組的遍歷
 nums := [...]int{1,2,3,4,5,6,7,8}
 for k, v:= range nums{
  // k 為下標(biāo),v 為對(duì)應(yīng)的值
  fmt.Println(k, v, " ")
 }

 fmt.Println()

 // 切片的遍歷
 slis := []int{1,2,3,4,5,6,7,8}
 for k, v:= range slis{
  // k 為下標(biāo),v 為對(duì)應(yīng)的值
  fmt.Println(k, v, " ")
 }

 fmt.Println()

 // 字典的遍歷
 tmpMap := map[int]string{
  0 : "小明",
  1 : "小紅",
  2 : "小張",
 }

 for k, v:= range tmpMap{
  // k 為鍵值,v 為對(duì)應(yīng)值
  fmt.Println(k, v, " ")
 }
}

通過(guò) for-range 可以對(duì)數(shù)組、切片和字典以同樣的方式進(jìn)行遍歷。如果僅需要遍歷值,可以將不需要的鍵改為匿名變量形式,如下所示:

for _, v := range nums {

僅遍歷鍵時(shí),可以直接省略掉無(wú)用值的賦值。在 for-range 遍歷的過(guò)程中,因?yàn)殒I和值都是通過(guò)拷貝的方式進(jìn)行賦值,對(duì)它們進(jìn)行修改并不會(huì)影響到容器內(nèi)成員的變化,這點(diǎn)需要我們?cè)趯?shí)際開發(fā)中多加注意。

小結(jié)

本文主要介紹了容器的遍歷。go 語(yǔ)言中主要通過(guò) for-range 語(yǔ)法,文中實(shí)際的案例分別展示了數(shù)組、切片和字典的遍歷過(guò)程。
在數(shù)組上使用 range 將傳入 index 和值兩個(gè)變量。當(dāng)我們不需要使用該元素的序號(hào),可以使用空白符"_"省略了。不過(guò)有些場(chǎng)景可能確實(shí)需要知道它的索引。 

到此這篇關(guān)于Go 容器遍歷的實(shí)現(xiàn)示例的文章就介紹到這了,更多相關(guān)Go 容器遍歷內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家! 

您可能感興趣的文章:
  • Django繼承自帶user表并重寫的例子
  • Go語(yǔ)言中nil判斷引起的問(wèn)題詳析
  • 分析Go語(yǔ)言中CSP并發(fā)模型與Goroutine的基本使用
  • Go遍歷struct,map,slice的實(shí)現(xiàn)
  • Golang的繼承模擬實(shí)例

標(biāo)簽:江西 黑龍江 宜賓 延邊 張掖 嘉峪關(guān) 新余 武漢

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Go 容器遍歷的實(shí)現(xiàn)示例》,本文關(guān)鍵詞  容器,遍歷,的,實(shí)現(xiàn),示例,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Go 容器遍歷的實(shí)現(xiàn)示例》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于Go 容器遍歷的實(shí)現(xiàn)示例的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    五家渠市| 固阳县| 临汾市| 武夷山市| 襄汾县| 木兰县| 石屏县| 巫山县| 普陀区| 阿克苏市| 亳州市| 广河县| 内丘县| 界首市| 潼南县| 台北市| 平度市| 都江堰市| 鄯善县| 富阳市| 绿春县| 临潭县| 海南省| 巴塘县| 稻城县| 许昌市| 池州市| 永定县| 台湾省| 勐海县| 蛟河市| 无极县| 汝阳县| 和硕县| 中方县| 武鸣县| 磐石市| 丽江市| 江华| 宁晋县| 尉犁县|