Go基础知识
函数
//函数声明通用语法
func functionname(parametername type) returntype{
//函数体(具体实现的功能)
}
//示例
/*
写一个计算商品价值的函数为例,输入参数是单件商品的价格和商品的个数,两者的乘积为商品总价,作为函数的输出值
*/
package main
import "fmt"
func main() {
var x = calculateBill(20, 10)
fmt.Println(x) //打印200
}
////参数
//常规写法
func calculateBill(price int, count int) int{
var totalprice = price * count // 商品总价 = 商品单价 * 数量
return totalprice
}
//类型相同可以省略写
func calculateBil(price, count int) int{
var totalprice = price * count
return totalprice
}
////返回值
/*
以矩形的长和宽为输入参数,计算并返回矩阵面积和周长的函数rectProps
*/
//多返回值
func rectProps(height,width float64)(float64, float64){
var area = height * width
var perimeter = (height + width) * 2
return area,perimeter
}
//命名返回值
func rectProps(length, width float64)(area, perimeter float64){
area = length * width
perimeter = (length + width) * 2
return //不需要明确指定返回值,默认返回area, perimeter的值
}
//空白符
/*
_在go中被用作空白符,可以用来表示任何类型的任何值。
下述函数计算的是面积和周长,而我们只需要计算面积,并不关心周长的计算结果此时就需要空白符
*/
func rectProps(length, width float64)(float64, float64){
var area = length * width
var perimeter = (length + width) * 2
return area, perimeter
}
func main(){
area, _ := rectProps(10.8, 5.6) //返回值周长被丢弃
}
包(未完待续)
//main函数和main包
/*
main函数是所有可执行的Go程序都必须包含的,这个函数是程序运行的入口,且main函数应该放置于main包中。
package packagename这行代码指定了某一源文件属于一个包,它应该放在每一个源文件的第一行
*/
// geometry.go
package main
import "fmt"
func main() {
fmt.Println("Geometrical shape properties")
}
/*
package main这一行指定该文件属于main包。import "packagename"语句用于导入一个已存在的包,这里导入了fmt包,包内含有Println方法,接下来是main函数,会打印字符串
*/