一、go语言基础:
1.pakage main 表示一个可独立执行的程序
Import “fmt” 表示程序需要引入fmt包(函数或元素)
func mian():main函数是每一个可执行程序所必须包含的(主函数:入口函数)
{ 左大括号不能放在单独的一行
go语言不需要使用;结尾
Go语言使用fmt.Printf格式化字符串并赋值给新串
%d表示整形数字
%s表示字符串
%v表示按原值输出
fmt.Printf(“name is : %s, age is %d\n”,name,age)
2、go语言数据类型
布尔:默认为false
数字:默认为0
字符串
派生类型
3.go语言变量:
使用var声明
i :=1 等同于var i int = 1
这种因式分解的写法一般用于声明全局变量var (
a int
b bool
)
这种不带声明格式的只能在函数体中出现c , d :=123 , “hello”
int、float、bool、string这些基本类型属于值类型
交换两个变量的值 a, b = b , a(前提是两个变量的类型必须相同)
空白标识符_可以用来抛弃值:如5在_ , b = 5, 7中被抛弃
_实际上是一个只写变量,你不能得到它的值。这样做是因为go语言中你必须使用所有被声明的变量,但有时你并不需要从一个函数得到所有的返回值。
4.go语言常量
使用const声明
iota表示可改变的常量,从零开始依次+1递增
5.go语言运算符
位运算:
<<:左移运算符:(A为60)A<<3 表示乘以2的3次方,结果为:480
>>:右移运算符:A>>2表示除以2的2次方,结果为15
6.go语言条件判断语句:
if a <20 {
fmt.Println(“已执行”)
}
7.go语言循环语句:
(1)for i:= 1 ; i <= 10 ; i++{
Sum +=1
}
(2)使用for range可以对字符串、数组等进行迭代输出元素
numbers := [6]int{1,2,3,4}
for i,x := range numbers {
fmt.Printf(“第%d位的x值 = %d\n”, i,x)
}
8.go语言函数
函数由func开始声明
func max(num1, num2 int)int{
var result int
If num1 > num2{
result = num1
}else{
result = num2
}
return result
}
回调函数
闭包:匿名函数
9.go语言变量作用域
局部变量可以和全局变量名字相同,会优先使用局部变量的值
10、go语言数组
var i = [3]int{1,3,2}
i := [3]int{1,2,3}
当数组长度不确定时:var i = [...]int{1,2,3}
二维数组:i := [][]int{}
定义一个三行四列的二维数组:
a := [3][4]int{
{1,2,3,4},
{4,5,6,7},
{7,8,9,10},
}