这是我参与「第五届青训营 」伴学笔记创作活动的第 1 天
一、GO语言的特点
1.高性能、高并发; 2.语法简单、学习曲线平缓;3.丰富标准库;4.完善的工具链;5.静态链接;6.快速编译;7.跨平台;8.垃圾回收。
二、基础语法——Hello World
package main
import(
"fmt"
)
func main(){
fmt.Println("hello world")
}
第一行 package main 代表这个文件属于 main 包的一部分,main 包也就是程序的入口包。第三行导入了标准库里面的 FMT 包。这个包主要是用来往屏幕输入输出字符串、格式化字符串。import 下面是 main 函数,main 函数的话里面调用了 fmt.Println 输出 helloword。
三、基础语法——变量
package main
import (
"fmt"
"math"
)
func main() {
var a = "initial"
var b, c int = 1,2
var d = true
var e float64
f := float32( e )
g := a + "foo"
fmt.Println( a,b, c, d, e, f)
fmt.Println( g)
const s string = "constant"
const h = 500000000
const i = 3e20 / h
fmt .Println( s, h, i, math.Sin( h ), math.Sin( i ))
}
go语言是一门强类型语言,每一个变量都有它自己的变量类型。常见的变量类型包括 字符串 整数 浮点型、布尔型等。go 语言的字符串是内置类型,可以直接通过加号拼接,也能够直接用等于号去比较两个字符串。在go语言里面变量的声明有两种方式,一种是通过 var name string = "" 这种方式来声明变量,声明变量的时候,一般会自动去推导变量的类型。如果有需要,你也可以显示写出变量类型。另一种声明变量的方式是: 使用变量 冒号 := 等于值。
四、基础语法——if else
go语言 里面的 if else 写法和 C 或者 C++ 类似。不同点第一个是 if 后面没有括号。如果你写括号的话,那么在保存的时候你的编辑器会自动把你去掉。第二个不同点是 Golang 里面的if ,它必须后面接大括号,就是你不能像 C 或者 C++ 一样,直接把 if 里面的语句同一行。
五、基础语法——循环
在go里面没有 while 循环、do while 循环,只有唯一的一种 for 循环。最简单的 for 循环就是在 for 后面什么都不写,代表一个死循环。循环途中你可以用 break 跳出,也可以使用经典的 C 循环,就是 for i 等于0, i 小于 n, i 加加。这中间三段,任何一段都可以省略。在循环里面,你可以用 break 或者 continue 来跳出或者继续循环。
六、switch
go语言里面的 switch 功能更强大。可以使用任意的变量类型,甚至可以用来取代任意的 if else 语句。你可以在 switch 后面不加任何的变量,然后在 case 里面写条件分支。这样代码相比你用多个 if else 代码逻辑会更为清晰。
总结
通过这节课程的学习,初步对go语言的基础语法有了浅显的认识。