后端开发总结:go语言的知识点

Posted 尚墨1111

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了后端开发总结:go语言的知识点相关的知识,希望对你有一定的参考价值。

go语言知识点

1 append 列表

append() 切片需要增加 ...

var a []inta = append(a, 1) // 追加1个元素
a = append(a, 1, 2, 3) // 追加多个元素
a = append(a, []int1,2,3...) // 追加切片,

2 如何打印指针结构体的值

为结构体实现 String() 方法

type DataAndDetail struct 
   Data       *entity.Data
   DataDetail *entity.DataDetail


func (t *DataAndDetail) String() string 
   return fmt.Sprintf("Data:%v,DataDetail:%v", t.Data, t.DataDetail)


# test:
DataAggregate := &aggre.DataAndDetail
    Data:       data,
    DataDetail: detail,

fmt.Printf("aggre:%v", DataAggregate)

结果类似:

3 * 和 & 的用法

*是取出地址中的值,*string 则代表指针类型的 , & 表示变量对应的地址

  • &entity.State,表示创建一个结构体,并把地址取出,相当于结构体指针
  • 参数类型是 * 的指针类型,那么在传递值的时候就需要传递 &
// 定义参数指针类型
func AddState(c *gin.Context, options *entity.AddStateOptions) 

// 使用的时候就需要传递 &这种类型 
state.AddState(c, &req.AddStateOptions)

new 创建和 &State 结构体创建的区别,最好不用new,直接用指针方法

a:=new(user) // 创建的是对象指针
b:=&user   // 创建的是指针类型
c:=user    // 创建的是对象本身

以上是关于后端开发总结:go语言的知识点的主要内容,如果未能解决你的问题,请参考以下文章

Go语言底层知识总结新手必学

Go 后端主要做什么

Go语言语法及特性总结

Java与go哪个更适合后端开发呢?哪个更适合新手呢?

知乎又炸了!为什么都说 Go 语言是后端开发职场加速剂?

文末有彩蛋 耗时半个月!我总结了Go语言的知识点,给每一位想入门Go的小伙伴!