Go语言学习:每日一练1
目录
- Go语言学习:每日一练1
- 变量声明
- 函数定义
- 流程控制 if
- range遍历
- switch
变量声明
package main
//定义变量
var a = 1
const Message = “hello,world”
func main() {
b := 2 //短变量声明
var c = 3
c = TestMethod(a, b, c)
}
//定义函数
func TestMethod(x, y int, z int) int {
return x + y + z
}
函数定义
package main
func main() {
a, b := TestMethod(1, 2, 3)
//a,b会报错,函数内定义的变量必须要使用
}
//多返回值
func TestMethod(x, y int, z int) (int,int) {
return x + y, z
}
//权限控制--使用大写字母开头
流程控制 if
if a > 0 {
fmt.Println("a")
} else {
fmt.Println("nil")
}
for i := 0; i < 10; i++ {
sum += i
}
range遍历
s := []int{1, 2, 3, 4, 5}
for i, v := range s {
v = 100
fmt.Println(i, v)
}
说明:
- i是切片中元素的下标
- v是切片中元素的副本
注意:
v是元素的副本,对v的修改不会影响原来的切片。后面参数传递的时候会详细讲。
switch
- 不同于java语法,go中switch会在匹配到一个case以后结束执行,相当于java中每个case后自动加了一个break。
- 如果想继续执行,需要使用
fallthrough
func main() {
x := 1
switch x {
case 1:
fmt.Println("x is 1")
fallthrough // 执行完当前 case 后继续执行下一个 case
case 2:
fmt.Println("x is 2")
fallthrough // 再次使用 fallthrough
case 3:
fmt.Println("x is 3")
fallthrough
default:
fmt.Println("x is not 1, 2, or 3")
}
}
//所有的输出语句都会执行