Go语学习笔记 - 结构体 | 从零开始Go语言

简介: Go语学习笔记 - 结构体 | 从零开始Go语言

学习笔记,写到哪是哪。


结构体有点类似类的概念,结构体中可以为不同项定义不同的数据类型。更像数据集合的概念。


样例代码如下


package main
import "fmt"
type Student struct {
  name   string
  age    int
  gender string
}
func test_type(stu, stu1 Student) {
  fmt.Printf("%s,%s\n", stu.name, stu1.name)
  fmt.Printf("age + age = %d\n", stu.age+stu.age)
}
func test_type1(stu, stu1 *Student) {
  fmt.Printf("%s,%s\n", stu.name, stu1.name)
  fmt.Printf("age + age = %d\n", stu.age+stu.age)
}
func main() {
  fmt.Println(Student{"小黄",
  19, "男"})
  fmt.Println(Student{name: "小黄", age: 19})
  fmt.Println("---------------------------------")
  var stu Student = Student{"小黄", 19, "男"}
  var stu1 Student = Student{"小红", 18, "女"}
  test_type(stu, stu1)
  test_type1(&stu, &stu1)
}

执行结果


{小黄 19 男}

{小黄 19 }                      

---------------------------------

小黄,小红                        

age + age = 38                  

小黄,小红                        

age + age = 38    


小结

还是不能完全和java的类进行类比。


相关文章
|
13天前
|
Go
Go 语言循环语句
在不少实际问题中有许多具有规律性的重复操作,因此在程序中就需要重复执行某些语句。
24 1
|
2天前
|
存储 Go 容器
深入探究Go语言中的数据结构
深入探究Go语言中的数据结构
10 3
|
12天前
|
Go 开发者
探索Go语言的并发之美
在Go语言的世界里,"并发"不仅仅是一个特性,它是一种哲学。本文将带你领略Go语言中goroutine和channel的魔力,揭示如何通过Go的并发机制来构建高效、可靠的系统。我们将通过一个简单的示例,展示如何利用Go的并发特性来解决实际问题,让你的程序像Go一样,轻盈而强大。
|
11天前
|
Go
Go to Learn Go之结构体
Go to Learn Go之结构体
29 5
|
13天前
|
JSON Go API
使用Go语言和Gin框架构建RESTful API:GET与POST请求示例
使用Go语言和Gin框架构建RESTful API:GET与POST请求示例
|
13天前
|
Go
go语言创建字典
go语言创建字典
|
1天前
|
Go
GO语言时间转换
GO语言时间转换
9 0
|
13天前
|
Go
Go 语言接口
Go 语言提供了另外一种数据类型即接口,它把所有的具有共性的方法定义在一起,任何其他类型只要实现了这些方法就是实现了这个接口。 接口可以让我们将不同的类型绑定到一组公共的方法上,从而实现多态和灵活的设计。
|
Java 编译器 Go
一起学Golang系列(五)初次接触Go语言可能遇到的各种坑!
前面介绍了Go语言的基础语法,所谓磨刀不误砍柴工,希望大家还是能熟悉掌握这些基础知识,这样后面真正学起Go来才会得心应手。 作为初学者。Go语言的语法有些和java类似,但也有很多不一样的地方。刚开始都会遇到各种各样的坑。下面就来总结下学习go语言的过程中,遇到的各种坑。
一起学Golang系列(五)初次接触Go语言可能遇到的各种坑!
|
14天前
|
安全 Go 数据处理
探索Go语言的并发之美:Goroutines与Channels
在Go语言的世界里,"并发"不仅仅是一个概念,它是一种生活的方式。本文将带你领略Go语言中Goroutines和Channels的魔力,它们是如何让并发编程变得既简单又高效。我们将通过一个简单的示例,展示如何使用这些工具来构建一个高性能的网络服务。