Go 語言程式:建立至少包含兩個元素的 Person 結構體切片 People


在這篇文章中,我們將探討如何建立一個 Go 程式,該程式涉及一個名為 People 的 Person 結構體切片。該切片將包含至少兩個元素,分別代表具有各自姓名和地址的個人。透過探索切片的概念及其在 Go 中的用法,我們將學習如何有效地管理資料集合並在其上執行操作。讓我們深入瞭解如何在 Go 中使用切片來處理一組 Person 結構體。在這裡,我們將使用兩種不同的方法:使用字面量初始化和使用 append 函式,並透過示例來闡述這個概念。

語法

person.name

它用於訪問變數 person 的 name 欄位。

  • person − 表示特定型別的變數。

  • name − 表示欄位名稱。

person.address

它用於訪問變數 person 的 name 欄位。

  • person − 表示特定型別的變數。

  • address − 表示欄位地址。

演算法

  • 定義一個具有 name 和 address 欄位的 Person 結構體。

  • 建立一個名為 People 的 []Person 型別的切片。

  • 使用至少兩個 Person 結構體元素初始化 People 切片。

  • 驗證 People 切片的長度,以確保它至少包含兩個元素。

  • 根據需要訪問和修改 People 切片的元素。

  • 測試程式以確保 Person 結構體切片已正確建立。

示例 1

在這個程式碼示例中,我們定義了具有 Name 和 Address 欄位的 Person 結構體。

接下來,我們使用字面量初始化來初始化 People 切片。切片的每個元素都是一個用花括號 {} 括起來的 Person 結構體。我們在括號內為每個人的 Name 和 Address 欄位提供值。在 main 函式中,我們使用 for-range 迴圈遍歷 people 切片。我們訪問每個人並使用 fmt 包中的 Printf 函式列印他們的姓名和地址。

package main

import "fmt"

type Person struct {
   Name    string
   Address string
}

func main() {
   var people = []Person{
      {Name: "John Doe", Address: "123 Main Street"},
      {Name: "Jane Smith", Address: "456 Elm Avenue"},
   }

   for _, person := range people {
      fmt.Printf("Name: %s\n", person.Name)
      fmt.Printf("Address: %s\n", person.Address)
      fmt.Println()
   }
}

輸出

Name: John Doe
Address: 123 Main Street

Name: Jane Smith
Address: 456 Elm Avenue

示例 2

在這個程式碼示例中,我們首先定義了具有 Name 和 Address 欄位的 Person 結構體。

接下來,我們使用 var people []Person 建立一個空的 Person 結構體切片。

使用 append 函式,我們將 Person 結構體新增到 people 切片中。每個 append 語句都將一個新的 Person 結構體附加到切片中,並指定 Name 和 Address 欄位的值。在 main 函式中,我們使用 for range 迴圈遍歷 people 切片,並使用 Printf 函式列印每個人的姓名和地址。

package main

import "fmt"

type Person struct {
   Name    string
   Address string
}

func main() {
   var people []Person

   people = append(people, Person{Name: "John Doe", Address: "123 Main Street"})
   people = append(people, Person{Name: "Jane Smith", Address: "456 Elm Avenue"})

   for _, person := range people {
      fmt.Printf("Name: %s\n", person.Name)
      fmt.Printf("Address: %s\n", person.Address)
      fmt.Println()
   }
}

輸出

Name: John Doe
Address: 123 Main Street

Name: Jane Smith
Address: 456 Elm Avenue

結論

在 Go 中建立 Individual 結構體的切片允許您有效地儲存和管理個人資訊的集合。透過遵循上面概述的演算法,您將能夠輕鬆地建立一個名為 Individuals 且至少包含兩個元素的切片。在處理資料集合時,能夠使用 Go 中的切片提供了靈活性。

更新於: 2023年7月20日

167 次瀏覽

開啟您的 職業生涯

透過完成課程獲得認證

立即開始
廣告

© . All rights reserved.