Go語言程式使用不同型別的集合
在 Go 語言中,集合是一種資料結構,用於儲存多個元素,通常是相同型別的元素。Go 中的集合型別包括陣列、切片、對映和通道。切片被認為是動態陣列,其大小可以更改,而陣列具有固定大小。通道為 goroutine 提供了一種通訊和同步其執行的方法,而對映用於鍵值儲存。在這裡,我們將展示使用不同方式執行對映、切片和陣列,如下面的示例所示。
方法 1:使用對映、切片和陣列
此方法展示瞭如何在 Go 中使用陣列、切片和對映。陣列可以動態調整大小,並用於儲存任何型別元素的資料結構稱為切片。對映是一組鍵值對,每個值都有一個唯一的鍵。固定大小、有序的相同型別元素的集合稱為陣列。
演算法
步驟 1 − 建立一個 main 包,並在程式中宣告 fmt(格式化包),其中 main 生成可執行程式碼,fmt 幫助格式化輸入和輸出。
步驟 2 − 建立一個 main 函式,並在該函式中建立一個名為 countries 的 []string 型別切片,併為其提供一些元素。
步驟 3 − 使用 Println 語句在控制檯上列印切片。
步驟 4 − 建立一個名為 Map 的 map[string]int 型別對映,併為其提供一些鍵值對。
步驟 5 − 使用 Println 函式列印對映 Map。
步驟 6 − 建立一個 [3]int 型別名為 number 的陣列,並向其中新增一些元素。
步驟 7 − 使用 Println 函式輸出陣列的整數。
步驟 8 − 透過這種方法,您可以瞭解如何在 Go 中生成和使用各種集合,包括切片、對映和陣列。
示例
在此示例中,我們將使用切片、對映和陣列來演示不同型別的集合。
package main
import "fmt"
func main() {
// slice
countries := []string{"Canada", "Italy", "India"}
fmt.Println("The slice created here is:", countries)
// map
Map := map[string]int{"Canada": 3, "Italy": 2, "India": 1}
fmt.Println("The map created here is:", Map)
// array
var values [3]int
values[0] = 10
values[1] = 20
values[2] = 30
fmt.Println("The array created here is:", values)
}
輸出
The slice created here is: [Canada Italy India] The map created here is: map[Canada:3 India:1 Italy:2] The array created here is: [10 20 30]
方法 2:使用切片、對映和陣列複合字面量
此方法描述了在 Go 中訪問各種集合的另一種方法,該方法使用複合字面量初始化切片、對映和陣列。
演算法
步驟 1 − 建立一個 main 包,並在程式中宣告 fmt(格式化包),其中 main 生成可執行程式碼,fmt 幫助格式化輸入和輸出。
步驟 2 − 建立一個 main 函式,並在該函式中使用複合字面量建立一個名為 countries 的 []string 型別切片,並向其中新增一些元素。
步驟 3 − 使用 Println 函式列印切片 countries。
步驟 4 − 使用複合字面量建立一個名為 Map 的 map[string]int 型別對映,併為其提供一些鍵值對。
步驟 5 − 使用 Println 函式列印對映 Map。
步驟 6 − 使用複合字面量建立一個 [3]int 型別的變數,併為其分配一些元素。
步驟 7 − 使用 Println 函式輸出陣列的整數。
步驟 8 − 由於此方法使用複合字面量初始化切片、對映和陣列,因此其程式碼比前一種方法更短、更易於閱讀。
示例
在此示例中,我們將使用切片、對映和陣列複合字面量來執行程式。
package main
import "fmt"
func main() {
// slice using composite literal
countries := []string{"Canada", "Italy", "India"}
fmt.Println("The slice created here is:", countries)
// map using composite literal
Map := map[string]int{"Canada": 3, "Italy": 2, "India": 1}
fmt.Println("The map created here is:", Map)
// array using composite literal
values := [3]int{10, 20, 30}
fmt.Println("The array created here is:", values)
}
輸出
The slice created here is: [Canada Italy India] The map created here is: map[Canada:3 India:1 Italy:2] The array created here is: [10 20 30]
結論
我們使用兩種方法執行了使用不同型別集合的程式。在第一種方法中,我們使用了切片、陣列和對映,在第二個示例中,我們使用了類似的集合,這些集合是在複合字面量的幫助下構建的。
資料結構
網路
關係資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP