go 语言 创建结构体
时间: 2023-07-08 09:47:24 浏览: 94
在Go语言中,可以使用`struct`关键字来创建结构体。结构体是一种自定义的数据类型,它可以包含多个字段,每个字段可以具有不同的类型。以下是一个创建结构体的示例代码:
```go
type Person struct {
Name string
Age int
}
```
该代码定义了一个名为Person的结构体,其中包含了两个字段:Name和Age。Name字段是一个字符串类型,Age字段是一个整数类型。要创建一个Person实例,可以使用以下代码:
```go
person := Person{Name: "John", Age: 35}
```
这将创建一个名为person的Person对象,其中Name字段设置为“John”,Age字段设置为35。要访问结构体中的字段,可以使用点符号。例如,要访问person对象的Name字段,可以使用以下代码:
```go
name := person.Name
```
这将将person对象的Name字段的值分配给name变量。同样,要访问Age字段,可以使用以下代码:
```go
age := person.Age
```
以上是如何创建和访问结构体的示例。在Go语言中,还可以使用匿名字段来创建嵌套结构体。例如,以下是一个示例代码,其中Person结构体嵌套了Address结构体:
```go
type Address struct {
Street string
City string
Country string
}
type Person struct {
Name string
Age int
Address Address
}
```
在此示例中,Person结构体中包含了一个Address字段,该字段是一个Address结构体类型。要创建一个包含Address字段的Person对象,可以使用以下代码:
```go
person := Person{
Name: "John",
Age: 35,
Address: Address{
Street: "123 Main St",
City: "Anytown",
Country: "USA",
},
}
```
这将创建一个Person对象,其中包含了Name、Age和Address字段。Address字段是一个Address结构体类型,并具有Street、City和Country字段。要访问Person对象中嵌套的Address结构体中的字段,可以使用以下代码:
```go
street := person.Address.Street
city := person.Address.City
country := person.Address.Country
```
这将将Person对象中嵌套的Address结构体中的Street、City和Country字段的值分配给street、city和country变量。
阅读全文