局部变量的定义
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的使用
⑦结构体
结构体的定义和引入: