使用複合字面量建立 Go 語言切片


在 Go 程式語言中,複合字面量用於建立給定型別的切片、陣列、結構體等物件並對其進行初始化。本文將透過三個示例來建立切片。第一個示例將建立數字切片,第二個示例將建立字串切片,第三個示例將使用內建函式建立切片。透過這種方式演示了切片的建立。讓我們來看一下這些示例,以便更清晰地瞭解這個概念。

語法

func make ([] type, size, capacity)

Go 語言中的 `make` 函式用於建立陣列/對映。它接受要建立的變數型別、大小和容量作為引數。

funcappend(slice, element_1, element_2…, element_N) []T

`append` 函式用於向陣列切片新增值。它接受多個引數。第一個引數是要新增值的陣列,後跟要新增的值。然後,該函式返回包含所有值的最終陣列切片。

演算法

  • 匯入程式中所需的包

  • 使用複合字面量建立切片並在切片中新增值

  • 在控制檯上列印切片

  • 使用 `Println` 函式執行列印語句,其中 `ln` 表示換行。

示例 1

在這個示例中,在主函式中使用複合字面量建立一個整數切片。輸出將是使用 `fmt` 包中的 `Println` 函式在控制檯上列印的切片。

package main

import "fmt"

func main() {
   slice := []int{10, 20, 30, 40, 50}

   fmt.Println("The values of the slice are:")
   fmt.Println(slice)
}

輸出

The values of the slice are:
[10 20 30 40 50]

示例 2

在這個示例中,將在主函式內使用複合字面量建立一個巧克力字串切片,稍後將使用 `fmt` 包中的 `Println` 函式(其中 `ln` 表示換行)在控制檯上列印。

package main

import "fmt"

func main() {
   chocolates := []string{"Munch", "Perk", "5star", "Dairymilk"}

   // Print the slice to the console
   fmt.Println("The chocolates in the slice are:")
   fmt.Println(chocolates)
}

輸出

The chocolates in the slice are:
[Munch Perk 5star Dairymilk]

示例 3

在這個示例中,使用 `make` 函式建立切片,並設定切片的大小。稍後,使用 `append` 函式向切片中新增元素,最後在控制檯上列印切片。

//Golang program to create slice using composite literal
package main

import "fmt"

func main() {
   values := make([]int, 0, 5)

   values = append(values, 10, 20, 30, 40, 50)

   // Print the slice on the console
   fmt.Println("The values of the slice are:")
   fmt.Println(values)
}

輸出

The values of the slice are:
[10 20 30 40 50]

結論

我們透過三個示例編譯並執行了使用複合字面量建立切片的程式。在第一個示例中,使用複合字面量建立了數字切片;在第二個示例中,建立了字串切片;在第三個示例中,使用了內建函式執行操作。

更新於:2023年7月20日

瀏覽量:129

啟動您的職業生涯

完成課程獲得認證

開始學習
廣告
© . All rights reserved.