Golang 字符串字面量表示方法 文章目录1.普通字符串字面量2.原始字符串字面量3.字节字符串字面量4.码值表示字符串字面量Unicode 转义序列UTF8 转义序列十六进制序列八进制序列5.小结参考文献在 Go 语言中字符串字面量可以通过不同的方式来表示。主要有三种形式1.普通字符串字面量普通字符串字面量Double-Quoted String Literals使用双引号包围。这种形式允许转义字符例如 \n换行、\t制表符等。str:Hello, World!\nThis is a new line.fmt.Println(str)运行输出Hello, World! This is a new line.2.原始字符串字面量原始字符串字面量Raw String Literals使用反引号包围。原始字符串字面量不处理转义字符所有的字符包括换行和反斜杠都会被原样保留。这对于需要包含多行文本或特殊字符的情况非常有用。rawStr:Hello, World! This is a raw string literal. It can span multiple lines. Special characters like \n and \t are not processed.fmt.Println(rawStr)运行输出Hello, World! This is a raw string literal. It can span multiple lines. Special characters like \n and \t are not processed.3.字节字符串字面量字节字符串字面量Byte Slice Literals使用字节切片[]byte来表示。这种形式通常用于处理原始字节数据可以使用普通字符串字面量或原始字符串字面量来初始化。byteStr:[]byte(Hello, World!)// 普通字符串字面量fmt.Println(string(byteStr))byteRawStr:[]byte(Hello, World! This is a raw byte string.)// 原始字符串字面量fmt.Println(string(byteRawStr))运行输出Hello, World! Hello, World! This is a raw byte string.4.码值表示字符串字面量Unicode 转义序列在 Go 语言中可以使用 Unicode 码值来书写字符串字面量。Unicode 码值使用 \u 或 \U 转义序列表示。\u 形式后面跟四个十六进制数字表示一个 Unicode 字符。\U 形式后面跟八个十六进制数字表示一个 Unicode 字符。// 使用 Unicode 转义序列表示字符串str1:\u4F60\u597D// 你好fmt.Println(str1)str2:\U00004E16\U0000754C// 世界fmt.Println(str2)运行输出你好 世界UTF8 转义序列十六进制序列在 Go 语言中UTF-8 字符也可以使用 \x 来表示这是另一种转义序列形式专门用于表示字节的十六进制值。使用 \x 表示法时后面可以跟随两个十六进制数字表示一个字节的值这在处理原始字节数据时非常有用。\xe4、\xbd 和 \xa0 组合起来表示汉字“你”。\xe5、\xa5 和 \xbd 组合起来表示汉字“好”。\xe4、\xb8 和 \x96 组合起来表示汉字“世”。\xe7、\x95 和 \x8c 组合起来表示汉字“界”。str1:\xe4\xbd\xa0\xe5\xa5\xbd// 你好fmt.Println(str1)str2:\xe4\xb8\x96\xe7\x95\x8c// 世界fmt.Println(str2)运行输出你好 世界八进制序列UTF-8 字符也可以使用 \ 之后跟随三个八进制数字0-7表示一个 byte 值。\344\275\240 组合起来表示汉字“你”。\345\245\275 组合起来表示汉字“好”。\344\270\226 组合起来表示汉字“世”。\347\225\214 组合起来表示汉字“界”。str1:\344\275\240\345\245\275// 你好fmt.Println(str1)str2:\344\270\226\347\225\214// 世界fmt.Println(str2)运行输出你好 世界5.小结在 Go 语言中字符串字面量可以通过多种方式表示每种方式都有其特定的用途和特点。如果使用字符的码值表示字符串那么可以用 Unicode 转义序列和 UTF8 转义序列。注意rune 类型的零值常用\000、\x00或\u0000等来表示。参考文献String literals - The Go Programming Language Specification基本类型和它们的字面量表示 - Go语言101