天天看点

字符串类型

字符串类型

字符串就是一串固定长度的字符连接起来的字符序列,go的字符串是由单个字节连接起来的,go语言的字符串的字节使用UTF-8编码标识Unicode文本

package main
import "fmt"
//演示golang中string类型使用
func main(){
//string的基本使用
var address string = "北京长城 110 hello world"
fmt.Println(address)
}
      

输出

北京长城 110 hello world
      

字符串使用细节

  1. go语言的字符串使用UTF-8编码标识Unicode文本,这样golang统一使用UTF-8编码,不会被乱码问题困扰
  2. 字符串一旦赋值了,字符串就不能修改了,在go中字符串不可变
package main
import "fmt"
//演示golang中string类型使用
func main(){
//字符串一旦赋值了,字符串就不能修改了,在go中字符串不可变
var str = "hello"
str[0] = 'a' //这里就不能去修改str的内容,即go中字符串不可变
}
      
  1. 字符串的两种表示形式

    (1)双引号 ,会识别转义字符

    (2)反引号,以字符串的原生形式输出,包括换行和特殊字符,可以实现防止攻击,输出源代码等效果

package main
import "fmt"
func main(){
//反引号,以字符串的原生形式输出,包括换行和特殊字符,可以实现防止攻击,输出源代码等效果
str2 := "abc\nabc"
fmt.Println(str2)
str3 := `
package main
import "fmt"
//演示golang中string类型使用
func main(){
//string的基本使用
var address string = "北京长城 110 hello world"
fmt.Println(address)
`
fmt.Println(str3)
}
      
abc
abc
package main
import "fmt"
//演示golang中string类型使用
func main(){
//string的基本使用
var address string = "北京长城 110 hello world"
fmt.Println(address)
      
  1. 字符串的拼接方式
  2. 当一个拼接的操作很长时,可以分行写,需要将+保留在上一行
package main
import "fmt"
func main(){
//字符串的拼接方式
var str = "hello" + "world"
str += " haha"
fmt.Println(str)
//当一个拼接的操作很长时,可以分行写,需要将+保留在上一行
var str4 = "hello" + "world" +
"hello" + "world" + "hello" +
"world" + "hello" + "world"
fmt.Println(str4)
}
      
helloworld haha
helloworldhelloworldhelloworldhelloworld