什么是字符串?
定义 字符串是一个不可改变的字节序列。
字符串的定义
package main
import "fmt"
import "strings"
import "strconv"
func stringtest() {
var name string = "Cloud natic cloud"
fmt.Println(name)
输出
Cloud natic cloud
// 常用方法
// 1、转译 字符 \n \t
address := "中国\n上海"
fmt.Println(address)
输出
中国
上海
// 2、反引号,以原生形式输出,包括特殊字符,防止注入***
var address2 string = `
上海迪士尼度假乐园\n 浦东
上海 静安寺
上海\n人民广场
`
fmt.Println(address2)
输出
上海迪士尼度假乐园\n 浦东
上海 静安寺
上海\n人民广场
// 3、字符串拼接
var conn_string string= "hello" + " " + "go"
fmt.Println(conn_string)
hello go
// 4 字符串索引
var str_index string="hello go"
fmt.Println(str_index)
// 遍历
for k,v :=range str_index{
fmt.Printf("k is %d,value is %c\n",k,v)
}
输出
k is 0,value is h
k is 1,value is e
k is 2,value is l
k is 3,value is l
k is 4,value is o
k is 5,value is
k is 6,value is g
k is 7,value is o
// 5、修改字符串
change_str := "say hello"
fmt.Println(change_str)
s1 :=[]rune(change_str) // 转化为[]int32的切片,rune是int32的别名
fmt.Println(s1)
fmt.Println(s1[1]) //
输出 97
s1[1] = '哈'
change_str =string(s1) //类型强转,rune转为string
fmt.Println(change_str)
输出
s哈y hello
// 6、字符串处理 strings 的包
//1、判断是否以某个字符串开头,返回布尔值
res0 :=strings.HasPrefix(s2,"ww")
res1 :=strings.HasPrefix(s2,"hello")
fmt.Printf("res0 is %v\n", res0)
输出
res0 is false
fmt.Printf("res1 is %v\n", res1)
输出
res1 is true
// 2、判断是否以某个字符串结尾,返回布尔值
res3 :=strings.HasSuffix(s2,"go")
res4 :=strings.HasSuffix(s2,"hello")
fmt.Printf("res3 is %v\n", res3)
输出
res3 is true
fmt.Printf("res4 is %v\n", res4)
输出
res4 is false
fmt.Println("基本数据类型转化")
// go 基本数据类型转化 fmt.Sprintf("%参数",表达式) 将数据类型转换成
// string字符串
var n1 int = 36
var n2 float64 = 35.73
var b bool = false
var newChar byte = 'c'
// 依次输出
// go 格式化输出
// %q 单引号
// %d 十进制表示
// %f 有小数点
// %t 布尔值
// %c unicode 对应的字符
// %T
输出
s1 type string s1="36"
s12 type string s12="35.730000"
s3 type string s3="false"
s4 type string s4="c"
// 使用 Stronv 导入strconv 模块
//参数解释
// f 格式
// 10 小数位保留10位
// 64 表示float64
s5 :=strconv.FormatFloat(nu2,'f',10,64)
fmt.Printf("s5 类型是%T s5=%q\n",s5,s5)
s6 :=strconv.FormatBool(b11)
fmt.Printf("s6 类型是%T s6=%q\n",s6,s6)
输出
s5 类型是string s5="35.6600000000"
s6 类型是string s6="true"
}
func main() {
stringtest()
}
字符串的常用方法
有疑问加站长微信联系(非本文作者)