[golang]golang中的双引号、单引号、反引号

  • go语言中不倾向使用单引号表示字符串,单引号用于表示Golang的一个特殊类型:rune,类似其他语言的byte但又不完全一样,是指:码点字面量(Unicode code point),不做任何转义的原始内容

  • 双引号用来创建可解析的字符串字面量(支持转义,但不能用来引用多行)

  • 反引号用来创建原生的字符串字面量,这些字符串可能由多行组成(不支持任何转义序列),原生的字符串字面量多用于书写多行消息、HTML以及正则表达式

package main

import (
    "fmt"
)

func main() {
    fmt.Println("hello world \t hehe")

    fmt.Println(`hello
world
\t hehe`)
}

// 输出
$ go run src/hello/hello.go
hello world      hehe
hello
world
\t hehe

Go语言的字符串类型string在本质上就与其他语言的字符串类型不同:

Java的String、C++的std::string以及Python3的str类型都只是定宽字符序列

Go语言的字符串是一个用UTF-8编码的变宽字符序列,它的每一个字符都用一个或多个字节表示,即:一个Go语言字符串是一个任意字节的常量序列。

参考

https://studygolang.com/articles/7312
https://studygolang.com/articles/8431
https://blog.csdn.net/wanchope/article/details/53413760

你可能感兴趣的:(go)