Go语言字符串类型

Go语言字符串类型教程

字符串是一个不可改变的字节序列。字符串可以包含任意的数据,但是通常是用来包含可读的文本。Go 语言 字符串是 UTF-8 字符的一个序列,就是一串固定长度的字符连接起来的字符序列。

Go 语言的字符串的字节使用 UTF-8 编码标识 Unicode 文本。Go 语言字符串需要使用双引号引起来。

Go语言字符串类型使用

Go 语言字符串是一种值 类型,且值不可变,即创建某个文本后你无法再次修改这个文本的内容,也可以理解,字符串是字节的定长 数组

Go 语言字符串的内容(纯字节)可以通过标准索引法来获取,在中括号 [] 内写入索引,索引从 0 开始计数。

Go语言字符串形式详解

双引号

语法

"hello haicoder"

说明

使用双引号定义的字符串,会识别转义字符。

反引号

语法

`hello haicoder`

说明

使用反引号定义的字符串,以字符串的原生形式输出,包括换行和特殊字符,可以实现防止攻击、输出源代码等效果。

Go语言字符串拼接详解

语法

str = str1 + str2

参数

参数 描述
str 拼接后返回的字符串。
str1 需要拼接的字符串。
str2 需要拼接的字符串。

说明

Go 语言字符串拼接符为 +,两个或多个字符串可以通过 + 拼接在一起,形成一个新的字符串。

Go语言UTF-8字符串

Go 语言里的字符串的内部实现使用 UTF-8 编码。通过 rune 类型,可以方便地对每个 UTF-8 字符进行访问。当然,Go 语言也支持按传统的 ASCII 码方式进行逐字符访问。

Go语言多行字符串详解

语法

``` Hello Haicoder, Hello Golang, www.haicoder.net ```

说明

Go 语言中使用双引号定义的字符串是不支持换行的。在 Go 语言中,定义一个多行字符串需要使用反引号 `` 将多行字符串引起来。

案例

字符串类型

使用 string 类型,定义一个字符串变量

package main import ( "fmt" ) func main() { fmt.Println("Hello 嗨客网(www.haicoder.net)") var name string = "HaiCoder" var site = "嗨客网" fmt.Println("Name = ", name, "Site = ", site) }

程序运行后,控制台输出如下:

42 golang string.png

我们使用 string 定义了一个字符串变量 name,并给变量赋值为 HaiCoder。 接着,我们再次使用类型的自动推导,定义了一个字符串变量,并赋值为 嗨客网

多行字符串

使用 `` 定义多行字符串

package main import ( "fmt" ) func main() { fmt.Println("Hello 嗨客网(www.haicoder.net)") var name string = "Hello \"HaiCoder\"" var site = `Hello "HaiCoder"` fmt.Println("Name = ", name) fmt.Println("Site = ", site) }

程序运行后,控制台输出如下:

43 golang string.png

我们使用 string 定义一个字符串,字符串中包含双引号,所以我们必须使用转义字符进行转义,否则会报错。

接下来,我们使用反引号定义一个多行字符串,该字符串里面所有的字符都会原样输出,不需要进行任何转义。

字符串拼接

使用 + 实现字符串拼接

package main import ( "fmt" ) func main() { fmt.Println("Hello 嗨客网(www.haicoder.net)") var name string = "HaiCoder" var site = " : http://www.haicoder.net" fmt.Println(name + site) }

程序运行后,控制台输出如下:

44 golang string.png

我们定义了两个字符串,接着在打印结果时,使用 + 实现两个字符串的拼接。

Go语言字符串类型总结

Go 语言中字符串是一个不可改变的字节序列。字符串可以包含任意的数据,但是通常是用来包含可读的文本。

Go 语言字符串需要使用双引号引起来。使用 `` 可以定义一个多行 Go 语言字符串,该字符串中的所有的字符都会原样输出,不需要转义。

使用 + 可以实现两个 Go 语言字符串的拼接。