Golang结构体和结构体和map
Golang
文章目录文章目录Golang1 struct2 map3 struct补充
1 struct
在Golang中没有对象,但是有面向对象的思想,有继承,多态,封装的思想。
但是缺少了class,而取而代之的是struct(结构体)
下面的是几种结构体的初始化方法下面的是几种结构体的初始化方法4种方法种方法
package main
import "fmt"
//结构体 - 对象
type cat struct{
name string
age int
sex string
}
func main(){
var cat1 cat
cat1.name = "小白"
cat1.age = 12
cat1.sex = "男"
fmt.Println(cat1)
}
type Person struct{
Name string
Age int
}
func main(){
//2.
P := Person{}
P.Name = "tom"
P.Age = 15
fmt.Println(P)
p2:=Person{"marry",20}
fmt.Println(p2)
//3
var p3 *Person = new(Person)
(*p3).Name = "city"
(*p3).Age = 16
p3.Name = "kinh"
fmt.Println(p3)
fmt.Println(*p3)
//4.
var p4 *Person = &Person{}
(*p4).Name = "scott"
(*p4).Age = 29
p4.Age = 24
fmt.Println(p4)
fmt.Println(*p4)
}
强调强调 1
需要强调的是结构体的地址是连续性分布的需要强调的是结构体的地址是连续性分布的,所以很多编程高手不需要编程得到地址,反而可以直接通过地址连续这一特性。所以很多编程高手不需要编程得到地址,反而可以直接通过地址连续这一特性。
获得下一结构体的地址。获得下一结构体的地址。
type Point struct{
x int
y int
}
type Rect struct{
leftUp, rightDown Point
}