Go 語言程式遍歷字典元素
在 Go 語言中,字典類似於對映,它是一組鍵值對,每個值都有一個唯一的鍵。值可以是任何型別,鍵可以是任何類似的型別,例如字串或整數。我們可以使用內建的“make”函式構建一個空對映,然後新增、檢索或更新值。我們將在這裡使用兩個示例來遍歷字典的元素,其中第一個示例將使用迴圈遍歷元素,而下一個示例將使用切片遍歷元素。
方法 1:使用 for 迴圈和 range 關鍵字
此方法建立一個名為 dict_value 的字典,其中包含三個鍵值對,然後使用 for 迴圈和 range 關鍵字遍歷字典的元素。在每次迴圈迭代期間,當前元素的鍵和值將分配給相應的變數,然後將其輸出到控制檯。
語法
map[strings]
對映實現了一個無序的鍵值對集合。對映的鍵都是不同的,用於獲取它們對應的值。它們使用關鍵字“map”後跟方括號中的鍵型別和值型別來宣告,並且可以使用內建的“make”函式生成。方括號語法可用於新增、檢索或更新鍵值對。動態對映的大小可以根據需要增加或減少。在 Go 程式設計中,對映是一種常見的資料結構,用於說明鍵和值之間的關係。
演算法
步驟 1 − 建立一個 package main 並宣告程式中的 fmt(格式化包)包,其中 main 生成可執行程式碼,而 fmt 幫助格式化輸入和輸出。
步驟 2 − 建立一個 main 函式,並在該函式中使用 map 函式建立一個名為 dict_values 的字典,其中包含鍵值對。
步驟 3 − 使用 range 關鍵字作為 for 迴圈的初始值來遍歷字典的項。
步驟 4 − 在每次迴圈迭代期間,當前元素的鍵和值將分配給關聯的變數。
步驟 5 − 當前元素的鍵和值將使用 fmt.Println() 函式輸出到控制檯,其中 ln 表示換行。
步驟 6 − 直到字典中的每個元素都已處理,對每個元素重複步驟 3 和 4。
示例
在此示例中,我們將使用迴圈和 range 關鍵字以及它來遍歷字典的元素。讓我們看看它的程式碼是如何執行的。
package main
import "fmt"
func main() {
// Define a dictionary
dict_values := map[string]int{
"Apple": 100,
"Mangoes": 200,
"Banana": 60,
}
fmt.Println("The dictionary is iterated as follows:")
// Iterate through the elements of the dictionary
for key, value := range dict_values {
fmt.Println(key, value)
}
}
輸出
The dictionary is iterated as follows: Apple 100 Mangoes 200 Banana 60
方法 2:使用切片
在此方法中,我們首先使用 for 迴圈和 range 關鍵字對字典的鍵進行切片。然後,使用另一個 for 迴圈和索引運算子 [],我們遍歷鍵以獲取相應的值。最後,我們將每個元素的鍵和值輸出到控制檯。
語法
func append(slice, element_1, element_2…, element_N) []T
append 函式用於向陣列切片新增值。它需要多個引數。第一個引數是我們希望向其新增值的陣列,後跟要新增的值。然後,該函式返回包含所有值的陣列的最終切片。
演算法
步驟 1 − 建立一個 package main 並宣告程式中的 fmt(格式化包)包,其中 main 生成可執行程式碼,而 fmt 幫助格式化輸入和輸出。
步驟 2 − 建立一個函式 main,並在該函式中使用 map 函式建立一個名為 dict_values 的字典,其中包含鍵值對。
步驟 3 − 要遍歷字典的鍵並生成鍵的切片,請使用 range 關鍵字初始化一個 for 迴圈。
步驟 4 − 設定第二個 for 迴圈並開始遍歷新生成的切片中的鍵。
步驟 5 − 利用索引運算子 [] 從字典中檢索切片中每個鍵的相關值。
步驟 6 − 每個元素的鍵和值將使用 fmt.Println() 函式輸出到控制檯,其中 ln 表示換行。
步驟 7 − 對於切片中的每個鍵,重複步驟 4 和 5,直到所有元素都已處理。
示例
在此示例中,切片用於遍歷字典的元素。讓我們透過程式碼瞭解一下。
package main
import "fmt"
func main() {
// Define a dictionary
dict_values := map[string]int{
"Apple": 100,
"Mangoes": 200,
"Banana": 60,
}
// Get a slice of the keys from the dictionary
slice := make([]string, 0, len(dict_values))
for key := range dict_values {
slice = append(slice, key)
}
fmt.Println("The dictionary is iterated as follows:")
// Iterate through the keys and get the corresponding values
for _, key := range slice {
value := dict_values[key]
fmt.Println(key, value)
}
}
輸出
The dictionary is iterated as follows: Apple 100 Mangoes 200 Banana 60
結論
我們使用兩種方法執行了遍歷字典元素的程式。在第一種方法中,我們使用了 for 迴圈和 range 關鍵字,在第二個示例中,我們使用了切片來遍歷字典的元素。
資料結構
網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP