go初学者笔记(2)

fmt.Printf(“请输入: \n”)
fmt.Scan

  • 运算符
可以a++ 或 a--
但 a = a++ 报错
  • 条件语句
package main
  
import "fmt"
func main() {
    if num := 9; num < 0 { # 可以在if中声明一个变量
        fmt.Println(num, "is neg")
    } else if num < 10 {
        fmt.Println(num, "less 10")
    } else {
        fmt.Println(num, "else")
    }
}
=>less 10

switch var1 {
    case val1:
        ...
    case val2:
        ...
    default:
        ...
}
switch默认每个case中都是break,如果需要穿透,加fallthrough
select {
    case communication clause  :
       statement(s);      
    case communication clause  :
       statement(s);
    /* 你可以定义任意数量的 case */
    default : /* 可选 */
       statement(s);
}
每个 case 都必须是一个通信
随机执行一个可运行的case,其他不会执行。
否则:default 子句,若没有 default 子句,select 将阻塞,直到某个通信可以运行;Go 不会重新对 channel 或值进行求值。

  • 循环
for init; condition; post { }
for condition { } # => while in C

无限循环
for { }
for true {
	xxxx
}

for key, value := range oldMap {
    newMap[key] = value
}

strings := []string{"google", "baidu"}
for i, s := range strings {
        fmt.Println(i, s)
}


# break,continue,goto可带标记
re:
    for i := 1; i <= 3; i++ {
        fmt.Printf("i: %d\n", i)
        for i2 := 11; i2 <= 13; i2++ {
            fmt.Printf("i2: %d\n", i2)
            break re
        }
    }

var x = 1
A: for x < 100 {
	if x%10 == 0 {
		**goto** A
	}
	x++
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值