之前我学过C、Java、Python语言时总结的经验:
- 先建立整体框架,然后再去抠细节。
- 先Know how,然后know why。
- 先做出来,然后再去一点点研究,才会事半功倍。
- 适当的囫囵吞枣。因为死抠某个知识点很浪费时间的。
- 对于GO语言,切记遵守语法格式规则。(例如python语言、例如SpringBoot框架等)
解释:某些知识点,就是很难了解,那么先做出来,然后继续向前学习,可能在某个时间点我们就会恍然大悟。
基本语法:
if 条件表达式 {
代码块
}
//说明:当条件表达式为true, 则执行{}中的代码。
案例:判断输入的年龄,是否大于18岁。
var age int
fmt.Println("请输入你的年龄:")
fmt.Scanln(&age)
if age > 18 {
fmt.Println("你年龄大于18岁啦")
} else {
fmt.Println("你年龄小于18岁啦")
}
Golang支持在if中,直接定义一个变量:
var age int
fmt.Println("请输入你的年龄:")
fmt.Scanln(&age)
if age > 18 {
fmt.Println("你年龄大于18岁啦")
} else {
fmt.Println("你年龄小于18岁啦")
}



for 循环变量初始化;循环条件;循环变量迭代{
循环操作(语句)
}
对上面的语法格式说明:
for 循环判断条件{
// 循环语句
}
写法等价于 for ; ; {} 。是一个无限循环,通常需要配合 break语句使用。
// 传统方式
var star string = "abcdedfg"
for i :=0; i < len(str); i++ {
fmt.printf("%c \n",str[i]) // 使用坐标
}
// 使用 for - range方式
var str string = "abcdefg"
for index, val := range str {
fmt.Printf("index = %d,val=%c \n", index, val)
}
// 其中“index”获取字符串的下标,然后通过下标获取字符后交给val。进行打印
/*
index = 0,val=a
index = 1,val=b
index = 2,val=c
index = 3,val=d
index = 4,val=e
index = 5,val=f
index = 6,val=g
*/
// 其实index和val就是定义的变量名
for i, v := range str {
fmt.Printf("index = %d,val=%c \n", i, v)
}
两者区别: