在Golang中,字符串是一个用UTF-8编码的变宽字符序列,它的每一个字符都用一个或多个字节表示。
在Golang中,我们可以使用双引号和反引号来创建字符串,不过用双引号来创建的字符串支持转义,但不支持换行;而用反引号来创建的字符串不支持转义,但却支持换行。
在Golang中,单引号通常只能包裹一个字符,且其创建的字符串不是string类型,而是rune(int32)类型,也即是码点字面量(Unicode code point)。
大多数情况,我们都使用双引号来定义字符串,但如果想获取字符串的原始内容,或者需要使用换行那就要使用反引号。比如,在正则表达式的使用上,一般就是使用反引号。而至于单引号,则一般使用较少,而且常用于码点字面量的获取上。
在Golang中,双引号、单引号以及反引号的使用,虽然看起很简单,但是若不谨慎,踩坑也是少不了的。