1、fmt.Printf有严格的类型限制,比如:%s对应字符串,%d对应数字。而在java中,%s可以适配任意类型。
2、go func()的执行不一定是按调用发起顺序执行的,而且当main结束后,所有协程将不会继续执行。

具体测试代码:
[code]
package main

import (
"fmt"
)

func showOK(i int) {
fmt.Printf("showOK: %d\r\n", i)
}

func main() {
uids := []int{2, 3, 5, 8, 90}
for i, v := range uids {
fmt.Printf("%d: %d\r\n", i, v)
go showOK(i)
}
fmt.Printf("共有%d个!\r\n", len(uids))
}
[/code]
对应的输出结果:
[code]
0: 2
1: 3
2: 5
3: 8
showOK: 0
showOK: 2
showOK: 3
showOK: 1
4: 90
共有5个!
成功: 进程退出代码 0.
[/code]

标签: go, Printf

添加新评论