局部变量的定义
var age int = 18/age:=18 fmt.Println("age=",age)
全局变量的定义
var{ age=10 name="tom" }
if count<20 { fmt.Println("存库不足") }else{ fmt.Println("库存充足") }
go的条件判断语句可以定义变量:
if count:=20;count < 30 { fmt.Println("数量不够") }else{ fmt.Println("库存充足") }
多分支条件语句
if score > 90 { fmt.Println("A+") }else if score > 85{ fmt.Println("A") }
switch语句
var score int = 187 switch score/10{ case 10: fmt.Println("a") case 9: fmt.Println("b") default: fmt.Println("c") }
for循环
var sum int = 0 for var i int = 1;i <= 100;i++ { sum+=i; }
package main import "fmt" func cal(num1 int,num2 int)(int){ var sum int=0 sum+=num1 sum+=num2 return sum } func main(){ sum:=cal(10,20) fmt.Println(sum) }
返回值只有一个的时候,返回值类型的小括号可以删掉
package main import "fmt" func cal(num1 int,num2 int)int{ var sum int=0 sum+=num1 sum+=num2 return sum } func main(){ sum:=cal(10,20) fmt.Println(sum) }
多个返回值的时候,不能删
package main import "fmt" func cal(num1 int,num2 int)(int,int){ var sum int=0 sum+=num1 sum+=num2 var result int =num1-num2 return sum,result } func main(){ sum1,result1:=cal(10,20) //sum1,_:=cal(10,20) fmt.Println(sum1) fmt.Println(result) }
cal也有这种写法
func cal(num1 int,num2 int)(sum int,sub int){ sum:=num1+num2 sub:=num1-num2 return }
注:go语言中没有重载函数
可变参数
func test(args...int){ for i:=0;i在go中,函数也是种数据类型
func test(num int){ fmt.Println(num) } func main(){ a:=test a(10) test(10) }自定义数据类型
type myint int var num1 myint = 30 var num2 int =30 //两个变量都是int型,值为30③包的引入
可以先做一个环境变量(选):
go语言语法
①变量的定义
局部变量的定义
var age int = 18/age:=18 fmt.Println("age=",age)全局变量的定义
var{ age=10 name="tom" }②条件语句
if count<20 { fmt.Println("存库不足") }else{ fmt.Println("库存充足") }go的条件判断语句可以定义变量:
if count:=20;count < 30 { fmt.Println("数量不够") }else{ fmt.Println("库存充足") }多分支条件语句
if score > 90 { fmt.Println("A+") }else if score > 85{ fmt.Println("A") }switch语句
var score int = 187 switch score/10{ case 10: fmt.Println("a") case 9: fmt.Println("b") default: fmt.Println("c") }for循环
var sum int = 0 for var i int = 1;i <= 100;i++ { sum+=i; }函数引用
package main import "fmt" func cal(num1 int,num2 int)(int){ var sum int=0 sum+=num1 sum+=num2 return sum } func main(){ sum:=cal(10,20) fmt.Println(sum) }返回值只有一个的时候,返回值类型的小括号可以删掉
package main import "fmt" func cal(num1 int,num2 int)int{ var sum int=0 sum+=num1 sum+=num2 return sum } func main(){ sum:=cal(10,20) fmt.Println(sum) }多个返回值的时候,不能删
package main import "fmt" func cal(num1 int,num2 int)(int,int){ var sum int=0 sum+=num1 sum+=num2 var result int =num1-num2 return sum,result } func main(){ sum1,result1:=cal(10,20) //sum1,_:=cal(10,20) fmt.Println(sum1) fmt.Println(result) }cal也有这种写法
func cal(num1 int,num2 int)(sum int,sub int){ sum:=num1+num2 sub:=num1-num2 return }注:go语言中没有重载函数
可变参数
func test(args...int){ for i:=0;i在go中,函数也是种数据类型
func test(num int){ fmt.Println(num) } func main(){ a:=test a(10) test(10) }自定义数据类型
type myint int var num1 myint = 30 var num2 int =30 //两个变量都是int型,值为30③包的引入
可以先做一个环境变量(选):
然后用路径引入:
注:其他包的函数,首字母小写的是不能被访问和使用的,首字母大写的则可以
当要引入的包名与文件夹名不一致时:
包下每个源文件对包的声明必须一致,要么都是文件夹名,要么都是同一个非文件夹名
⑤错误捕获
go语言中用到defer和recover来捕获错误:
自定义错误:
panic函数:后面的代码不会再执行,程序直接中断
⑥数组的引用
数组遍历的for-range方法:
二维数组的创建与初始化:
⑥切片
切片是go语言特有的数据类型,是一种抽象的数组
切片简写和拓展:
⑦map的使用
⑦结构体
结构体的定义和引入: