用fmt.Printf:
package main
import (
"fmt")
func main(){
var j int =5
a:=func()(func()){
var i int=10
return func(){
fmt.Printf("i,j:%d, %d\n",i,j)
}
}()
a()
j *=2
a()
}
结果:i,j:10, 5
i,j:10, 10
用fmt.Println:
package main
import ("fmt"
)
func main(){
var j int =5
a:=func()(func()){
var i int=10
return func(){
fmt.Println("i,j:%d, %d\n",i,j)
}
}()
a()
j *=2
a()
}
结果:i,j:%d, %d
10 5
i,j:%d, %d
10 10
由此可看出Println会将双引号里的输出类型也原样打印出来,但是Printf输出的是字符串类型的变量
所以需要格式化输出信息时用Printf,其他时间可以用Println