1. 为什么需要函数
1)请大家完成这样一个需求
输入两个数,再输入一个运算符(+,-,*,/),得到结果。
2)使用传统的方法解决
package main
import (
"fmt"
)
func main() {
// 请大家完成这样一个需求:
// 输入两个数,再输入一个运算符(+、-、*、/),得到结果
// 分析思路
var n1 float64 = 1.2
var n2 float64 = 2.3
var operator byte = '-'
var res float64
switch operator {
case '+':
res = n1 + n2
case '-':
res = n1 - n2
case '*':
res = n1 * n2
case '/':
res = n1 / n2
default:
fmt.Println("操作符号错误")
}
fmt.Println("res=",res)
}
分析一下上面代码的问题
1)上面的写法是可以完成功能的,但是代码冗余
2)不利于代码维护
3)函数可以解决这个问题
2. 函数的基本概念
为完成某一功能的程序指令(语句)的集合,称为函数。
在Go中,函数分为:自定义函数、系统函数(查看Go编程手册)
3. 函数的基本语法
4. 快速入门案例
使用函数解决前面的计算问题
package main
import (
"fmt"
)
// 将计算的功能,放到一个函数中,然后在需要的时候调用即可
func cal(n1 float64, n2 float64, operator byte) float64 {
var res float64
switch operator {
case '+':
res = n1 + n2
case '-':
res = n1 - n2
case '*':
res = n1 * n2
case '/':
res = n1 / n2
default:
fmt.Println("操作符号错误")
}
return res
}
func main() {
// 请大家完成这样一个需求:
// 输入两个数,再输入一个运算符(+、-、*、/),得到结果
// 分析思路
var n1 float64 = 1.2
var n2 float64 = 2.3
var operator byte = '-'
result := cal(n1,n2,operator)
fmt.Println("result=",result)
}