本文共 1857 字,大约阅读时间需要 6 分钟。
1.常量
使用 const 定义 格式如:
const identifier[type] = value//例如const pi float32 = 3.1415926....const hello = "你好Go!"const return = tureconst 人数 = 100
2.转义字符
Go使用反斜杠作为转义字符
例如 :换行符(\n), 制表符(\t)等等
3.赋值
func main() { a := 2 // := 是GO的一种简写 , 表示函数内部声明并赋值 b := 20 c = a fmt.Println(a,b,c)}注意: d := n++ if n++ == 1 {} ++n 上门这三个都是错误的演示在Go中 ++和--是语句,不是表达式,没有运算符优先级之说还有Go语言不支持重载
4.注释
就是平常的三种 1. //行注释2. /*这也是一个注释*/3. /* 这是一个Go的注释*/
5.枚举
常量可以作为枚举const( con = 0 opne = 1 close = 2)现在数字0,1,2分别代表控制,打开,关闭
关键字实现枚举
package main import("fmt")const( a = iote //a == 0 b //b == 1 ,隐式使用iota关键字,实际等同于 b == iota c //c == 2 ,c == iota d,e,f = iota, iota,iota //d=3,e=3,f=3 ,同一行值相同,此处不能只写一个iota g = iota //g = 4 h = "h" //h = "h" ,单独赋值,iota依旧等于5 i //i = "h" ,默认使用上面的赋值,iota依旧递增为6 j = iota //j = 7 )const z = iota //每个单独定义的const常良中,iota都会重置,此时z=0func main(){ fmt.Println(a,b,c,d,e,f,g,h,i,j)}
6.变量
声明变量var a int //定义一个变量a为int型var b bool //定义一个变量b为bool型var a, b int //定义两个变量为int型也可以这样var( a,b int c bool d string )//多个变量同时声明和赋值var a, b, c = 1, 2, 3注意:下面这种只能在函数体内使用 x,y = 5,6
6.1 局部变量声明
变量的声明有两种,上面的是一种,另一种是使用:=符号例如:a := 1 //等同于 var a = 1Go语言编译器能智能判别类型,不用写a变量的类型也可以的a := 1 /* 1. 这种全局变量的声明是错误的*/var a = 1 /* 2. 全局变量声明应该用这种形式*a := 10/* 3.前面已经定义了变量a ,同一个代码块中不能重复再次定义*/func main(){ b:=2 //只能在函数体中使用这种语法 a:=100 //把100赋给a没问题 a:=hello //函数体内部属于另一个代码块,可以再次声明变量a,改变变量类型 fmt.Println(a,b,c) }var c = 0 //全局变量不限位置,在函数体外即可/* 返回 100 , 2 ,0*/
7.匿名函数
func main() { x := 4 fmt.Println("休息休息")}注意!!!!//这段代码会报错局部变量有个特点就是定义了必须使用如果定义了x并没有用,编译会出错,即使是函数赋值也会出错
8. init函数
package mainimport ( "fmt" "math")var pi float64func init() { pi = 4 * math.Atan(1) //在init函数中计算pi的值}func main() { Dpi := pi * pi fmt.Println(pi, Dpi)}返回:3.141592653589793 9.869604401089358
转载地址:http://mpqen.baihongyu.com/