溫馨提示×

Go語言結(jié)構(gòu)體如何初始化數(shù)據(jù)

小樊
81
2024-10-24 01:13:23
欄目: 編程語言

在Go語言中,可以使用以下幾種方法來初始化結(jié)構(gòu)體的數(shù)據(jù):

  1. 使用字面量(Literal)初始化結(jié)構(gòu)體:
package main

import "fmt"

type Person struct {
    Name string
    Age  int
}

func main() {
    p := Person{"Alice", 30}
    fmt.Println(p)
}
  1. 使用new關(guān)鍵字初始化結(jié)構(gòu)體:
package main

import "fmt"

type Person struct {
    Name string
    Age  int
}

func main() {
    p := new(Person)
    p.Name = "Bob"
    p.Age = 25
    fmt.Println(p)
}
  1. 使用構(gòu)造函數(shù)初始化結(jié)構(gòu)體:
package main

import "fmt"

type Person struct {
    Name string
    Age  int
}

func NewPerson(name string, age int) *Person {
    return &Person{Name: name, Age: age}
}

func main() {
    p := NewPerson("Charlie", 35)
    fmt.Println(p)
}
  1. 使用make函數(shù)初始化結(jié)構(gòu)體(僅適用于包含指針、切片、映射和通道的結(jié)構(gòu)體):
package main

import "fmt"

type Person struct {
    Name string
    Age  int
}

func main() {
    p := make(Person)
    p.Name = "David"
    p.Age = 40
    fmt.Println(p)
}

以上就是Go語言中初始化結(jié)構(gòu)體數(shù)據(jù)的幾種方法。在實際編程中,可以根據(jù)需要選擇合適的方法進行初始化。

0