这篇文章将为大家详细讲解有关Println与Printf在Go中有什么不同,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
Println 和Printf 都是fmt包中公共方法;在需要打印信息时常用的函数,那么二函数有什么区别呢?
package main import ( "time" "fmt" ) const ( Man = 1 Female = 2 ) func main(){ timer := time.Now().Unix() if(timer % Female == 0){ fmt.Println("%d is Female", timer) fmt.Printf("%d is Female", timer) }else{ fmt.Println("%d is Man", timer) fmt.Printf("%d is Man", timer) } }
运行结果:
%d is Man 1529049077 // println输出结果
1529049077 is Man // printf输出结果
结果可知
Printf : 可打印出格式化的字符串,Println不行;
总结:
println会根据你输入格式原样输出,printf需要格式化输出并带输出格式;
补充:Go基础-Go中的Println和Print和Printf之间的区别
1、Println
在Println中进行输出时:
package main import ( f "fmt" ) func main(){ f.Println("hello","world","hello","world") f.Println("hello","world","hello","world") }
输出:
/private/var/folders/yt/24f_qg2n6879g2fg85994jf40000gn/T/___go_build_helloworld_go #gosetup
hello world hello world
hello world hello world
Process finished with exit code 0
在同一输出函数中输出多项的时候,hello和world中是存在空格的
在不同输出函数之间会换行
2、Print
在Print中进行输出时:
package main import f "fmt" func main(){ f.Print("hello","world","hello","world") f.Print("hello","world","hello","world") }
输出:
/private/var/folders/yt/24f_qg2n6879g2fg85994jf40000gn/T/___go_build_helloworld_go #gosetup
helloworldhelloworldhelloworldhelloworld
Process finished with exit code 0
在同一个输出函数中处处多项的时候,hello和world中不存在空格
在不同输出函数之间,不换行
3、Printf
在Printf进行输出时:
package main import f "fmt" func main(){ a := 10 b := 20 c := "hello" f.Printf("a=%d,b=%d",a,b) f.Printf("c=%s",c) }
输出:
/private/var/folders/yt/24f_qg2n6879g2fg85994jf40000gn/T/___go_build_helloworld_go #gosetup
a=10,b=20c=hello
Process finished with exit code 0
可以对参数进行格式化输出,在不同输出函数中是不换行的。
总结:
函数 | 同函数输出多项 | 不同函数输出 |
Println | 之间存在空格 | 换行 |
不存在空格 | 不换行 | |
Printf | 格式化输出 | 不换行 |
关于Println与Printf在Go中有什么不同就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。