了解Go(Golang)中的Println函数

261 阅读2分钟

println

概述

Println定义在fmt包中,用于格式化字符串并写入标准输出

golang.org/pkg/fmt/#Pr…

以下是Println的函数原型

func Println(a ...interface{}) (n int, err error)

Println使用默认的格式指定器对字符串进行格式化,并在字符串后添加一个新行。Println需要一个可变数量的参数,每个参数是一个空接口。它返回打印的字符数和任何错误(如果发生)。由于参数类型是一个空接口,我们可以向它传递任何数据类型。我们可以传递一个字符串、int、float、struct或任何其他数据类型。Println函数的每个参数都会根据该参数类型的默认格式指定器进行格式化。例如,结构体将根据以下格式指定器进行格式化

%v

该格式指定器仅打印结构中的值部分。让我们看一个例子

程序

package main
import "fmt"
type employee struct {
    Name string
    Age  int
}
func main() {
    name := "John"
    age := 21
    fmt.Println("Name is: ", name)
    fmt.Println("Age is: ", age)
    e := employee{
        Name: name,
        Age:  age,
    }
    fmt.Println(e)
    fmt.Println("a", 12, "b", 12.0)

    
    bytesPrinted, err := fmt.Println("Name is: ", name)
    if err != nil {
	log.Fatalln("Error occured", err)
    }
    fmt.Println(bytesPrinted)
}

输出

Name is: John
Age is: 21
{John 21}
a 12 b 12
Name is: John
14

关于Println函数,需要注意的一些要点是

  • 它在结尾处附加一个换行。这就是为什么每个输出都在不同的行上。

  • 每个参数在输出中都会用空格隔开。这就是为什么

fmt.Println("Name is: ", name)

打印

Name is: John

在两个参数之间会自动引入空格。

  • 它返回打印的字符数或任何错误(如果发生)。
bytesPrinted, err := fmt.Println("Name is: ", name)
if err != nil {
    log.Fatalln("Error occured", err)
}
fmt.Println(bytesPrinted)

将输出以下内容

Name is: John
14

bytesPrinted的数量是14,因为输出了14个字符。

另外,请查看我们的Golang高级教程系列 -Golang高级教程

The postUnderstanding Println function in Go (Golang)appeared first onWelcome To Golang By Example.