方法的快速入门|学习笔记

简介: 快速学习方法的快速入门

开发者学堂课程【Go 语言核心编程 - 面向对象、文件、单元测试、反射、TCP 编程:方法的快速入门】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/626/detail/9676


方法的快速入门


内容介绍:

一、案例1

二、案例2

三、案例3

四、案例4

 

一、案例1——无形参,无返回值

给 Person 结构体添加 speak 方法,输出 xxx 是一个好人

func(p Person) speak(){

fmt.Println(p.Name,是一个"goodman~")

}

首先根据关键字写入 func(p Person),p 与 Person 绑定,前面给他一个名称,函数名叫 speak(),括号内无任何的形参,表明该方法不接受形参,fmt.Println(p.Name,是一个 "goodman~"即输出结果为 xxx 是一个 goodman。利用进行调用p.speak(),输出结果为汤姆是一个 goodman。

 

二、案例2

给 Person 结构体添加 jisuan 方法,可以计算从 1+...+1000 的结果,说明方法体内可以和函数一样,进行各种运算。

func (p Person) jisuan(){

res :=0

Fori:=1;i<=1000; i++ {

res+= i

}

fmt.Print1n(p.Name,“计算的结果是=",res)

}

写入 func (p Person) jisuan(),表示方法名为 jisuan,然后定义一个结果,res:=0利用 for 循环,i=1,i<=1000i++,进行累加 res+=i未要求将结果返回,直接输出fmt.Print1n(p.Name,“计算的结果是=",res)

利用 p.jisuan() 调用,运算结果与实际一样等于5050

 

三、案例3——接收参数

给 Person 结构体 jisuan2 方法,该方法可以接收一个数 n,计算从 1+..tn 的结果

func (p Person) jisuan2(n int){

res :=0

Fori:=1;i<=n; i++ {

res+= i

}

fmt.Print1n(p.Name,“计算的结果是=",res)

}

输入 func (p Person) jisuan2(),要求可以接收一个数,这个数其实就是参数写入()中,此例题与例2几乎一致,唯一的改变是把1000改成n。利用 p.jisuan2(10) 调用完成1-10累加运算,括号中的值可以改为任意n

 

四、案例4——有返回值

给 Person 结构体添加 getSum 方法,可以计算两个数的和,并返回结果。

func (p Person) getSum(n1 int,n2 int) int {

return n1 + n2

该方法需要传入两个数值n1 和n2,一个返回结果int,如果有多个返回值,需要加上括号。因为要把结果返回即输入 return n1+n2,因为结果是返回而不是在自身的函数体内输出,因此调用的时候需要一个接收信息,利用 res := p.getsum(10,20) fmt.Println("res=", res) 调用,输出结果为 res=30,与实际一致。

相关文章
|
算法 C语言 C++
快速入门C++
快速入门C++
77 0
|
12月前
|
Kubernetes 监控 调度
K8S快速入门
K8S快速入门
122 0
|
Web App开发 人工智能 数据可视化
RPA 快速入门|学习笔记
快速学习 RPA 快速入门
816 0
RPA 快速入门|学习笔记
|
Kubernetes Linux API
[没接触过kubevirt?]15分钟快速入门kubevirt
什么是kubevirt? kubevirt是一个容器方式运行虚拟机的项目。`kubevirt`是附加`kubernetes`集群上的,它是通过 `CustomResourceDefinition(CRD)`部署到`Kubernetes API`变成资源对象。使用方式类似创建`deploy、pod`......这些资源清单。
4279 0
[没接触过kubevirt?]15分钟快速入门kubevirt
|
5月前
|
存储 Python
PythonOOP快速入门
PythonOOP快速入门
|
6月前
|
存储 编译器 Linux
C++:快速入门篇
C++:快速入门篇
73 0
|
Linux Windows
QMQTT快速入门
环境搭建 • 准备一台linux设备和一台windows设备虚拟机也是可以的; • 安装mosquitto ; • 准备QMQTT环境 - windows下;
167 0
|
SQL 负载均衡 NoSQL
DawnSql快速入门
DawnSql开源分布式数据库,快速入门
DawnSql快速入门
|
SQL 分布式计算 关系型数据库
MLSQL(Byzer)的快速入门
MLSQL(Byzer)的快速入门
MLSQL(Byzer)的快速入门
|
自然语言处理 编译器 Linux
【C++】—— 快速入门(1)
【C++】—— 快速入门(1)
262 0
【C++】—— 快速入门(1)