第一天学习go语言,首先吐槽一下,配置go语言浪费了我两个小时的时间
不是在百度,就是在百度的路上,这里介绍一下我的go语言的版本和开发平台
go语言1.12版本,之前没有用过在早的版本了首先记录一下吧
今天学习的是go语言的声明变量,和变量之间的运算,还有一个iota貌似下标一样,还不太懂
话不多说,直接上代码
1 package main 2 3 import "fmt" 4 5 func main() { 6 var i int 7 var f float64 8 var b bool 9 var s string 10 fmt.Printf("%v %v %v %q ", i, f, b, s) 11 } 12 13 #初始化四个变量,输出结果为0,0,false,“” 14 #如果不给变量赋值,变量就为默认值,创建变量时需要声明变量
1 package main 2 3 import "fmt" 4 5 func main() { 6 //声明一个常数为int类型 7 const LENGTH int = 10 8 const WIDTH int = 5 9 //初始化一个int对象 10 var area int 11 const a, b, c = 1, false, "str" //多重赋值 12 13 area = LENGTH * WIDTH 14 fmt.Printf("面积为 : %d", area) 15 println(a, b, c) 16 } 17 18 #这里用的fmt.Printf()我发现这里用到这个类似于格式化输出时,必须用这个输出方式,如果只是打印的话ln就没问题
这里我还学习到一个类似于下标的一个东西,具体有什么作用还在看
iota
iota,特殊常量,可以认为是一个可以被编译器修改的常量。
iota 在 const关键字出现时将被重置为 0(const 内部的第一行之前),const 中每新增一行常量声明将使 iota 计数一次(iota 可理解为 const 语句块中的行索引)。
代码
1 // hello project main.go 2 package main 3 4 import ( 5 "fmt" 6 ) 7 8 func main() { 9 const ( 10 a = iota 11 b 12 c 13 d = "ha" 14 e 15 f = 100 16 g 17 h = iota 18 i 19 ) 20 // fmt.Println("a=", a) 21 22 fmt.Println(a, b, c, d, e, f, g, h, i) 23 }
懒的打输出结果,看图
这里前三个是下标,但是第四个和他后面的就不一样了,具体还在看
算法运算符
感觉这个没什么好自信研究的,跟python的运算是一样的
但是还是简单的敲了几行代码
1 // 学习go语言运算符 project main.go 2 package main 3 4 import ( 5 "fmt" 6 ) 7 8 func main() { 9 10 var a int = 21 11 var b int = 10 12 // var c int 13 14 //进行变量的相加相减操作 15 /*c = a + b 16 fmt.Printf("第一行 - c 的值为 %d ", c) 17 c = a - b 18 fmt.Printf("第二行 - c 的值为 %d ", c) 19 a++ 20 fmt.Printf("第六行 - a 的值为 %d ", a) 21 a = 21 // 为了方便测试,a 这里重新赋值为 21 22 a-- 23 fmt.Printf("第七行 - a 的值为 %d ", a)*/ 24 25 } 26 27 #这里直接输出就可以了就是变量的加减
最后一个if判断和逻辑运算符
1 // 学习go语言运算符 project main.go 2 package main 3 4 import ( 5 "fmt" 6 ) 7 8 func main() { 9 10 var a int = 21 11 var b int = 10 12 13 //逻辑运算符 14 var a bool = true 15 var b bool = false 16 if a && b { 17 fmt.Printf("第一行 - 条件为 true ") 18 } 19 if a || b { 20 fmt.Printf("第二行 - 条件为 true ") 21 } 22 23 }
感觉还是可以接受这样的语法的,哈哈,分享到此结束