Go 都有哪些打印输出语句? 它们的区别是什么?

6 min read

Go 语言中常见的打印输出语句有以下三种:

  1. fmt.Print

这个函数可以用来输出任何类型的数据,不同类型的数据之间不用空格或者其他分隔符隔开,直接拼接在一起输出。这个函数输出的内容没有换行符,如果想要换行需要手动添加"\n"换行符。

示例:

fmt.Print("hello", ' ', "world", "\n")

输出结果:

hello world
  1. fmt.Println

这个函数可以用来输出任何类型的数据,不同类型的数据之间用空格隔开,最后加上一个换行符"\n"。需要注意的是,如果要输出多个变量,需要用逗号隔开。

示例:

fmt.Println("hello", ' ',"world")

输出结果:

hello world
  1. fmt.Printf

这个函数使用格式化字符串输出指定格式的内容。格式化字符串中使用%作为占位符,不同类型的变量在占位符的位置上填充。需要注意的是,%占位符后面的字母表示变量的类型,例如%s表示字符串,%d表示整数,%f表示浮点数等。占位符可以带一个宽度和一个精度,宽度表示输出的字符总宽度,精度表示小数后面的位数。

示例:

fmt.Printf("123=%d, 3.14159=%.2f, name=%s\n", 123, 3.14159, "Tom")

输出结果:

123=123, 3.14159=3.14, name=Tom

这三个函数的区别是:

  • fmt.Print 和 fmt.Printl

n 输出的内容是一样的,只是有没有末尾的换行符的区别。

  • fmt.Printf 是通过格式化字符串输出指定格式的内容,而 fmt.Print 和 fmt.Printl 是直接输出变量的字符串表示,不需要指定格式。