普通函数–单个返回值
代码
package main
import (
"fmt"
)
func main(){
var a int = 100
var b int = 200
var ret int
ret = max(a,b)
fmt.Println("最大值是 = ",ret)
}
func max(num1,num2 int) int{
var result int
if num1 > num2 {
result = num1
}else {
result = num2
}
return result
}
运行结果

普通函数–多个返回值
package main
import (
"fmt"
)
func swap(x,y string) (string,string){
return y,x;
}
func main(){
str1,str2 := "Mesmeyy","Marisly"
fmt.Println("原来的字符串:",str1,str2)
str1,str2 = swap(str1,str2)
fmt.Println("后来的字符串",str1,str2)
}

闭包函数
package main
import (
"fmt"
"strings"
)
func makesuffix(suffix string) func(name string) string{
return func(name string) string{
if !strings.HasSuffix(name,suffix){
return name + suffix
}
return name
}
}
func main(){
test := makesuffix(".jpg")
fmt.Println("文件处理后:",test("go语言"))
fmt.Println("文件处理后:",test("PHP.jpg"))
}
运行结果
