千家信息网

GO语言基本数据类型字符串怎么用

发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,这篇文章主要介绍"GO语言基本数据类型字符串怎么用",在日常操作中,相信很多人在GO语言基本数据类型字符串怎么用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"GO语言基
千家信息网最后更新 2026年11月03日GO语言基本数据类型字符串怎么用

这篇文章主要介绍"GO语言基本数据类型字符串怎么用",在日常操作中,相信很多人在GO语言基本数据类型字符串怎么用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"GO语言基本数据类型字符串怎么用"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

字符串

Go语言中的字符串以原生数据类型出现。 Go 语言里的字符串的内部实现使用UTF-8编码。 字符串的值为双引号(")中的内容,可以在Go语言的源码中直接添加非ASCII码字符

GO语言中字符串是用双引号包裹的

GO语言中单引号包裹的是字符

// 字符串s := "Hello 中国"// 单独的字母、汉字、符合表示一个字符c1 := 'h'c2 := '1'c3 := '中'// 字节:1字节=8Bit(8个二进制位)// 1个字符'A'=1个字节// 1个utf8编码的汉字'中'= 一般占3个字节

字符串转义符

转义符 含义
\r 回车符(返回行首)
\n 换行符(直接跳到下一行的同列位置)
\t 制表符
' 单引号
" 双引号
\ 反斜杠

字符串的常用操作

方法 介绍
len(str) 求长度
+或fmt.Sprintf 拼接字符串
strings.Split 分割
strings.contains 判断是否包含

  • strings.HasPrefix,strings.HasSuffix 前缀/后缀判断

  • strings.Index(),strings.LastIndex() 子串出现的位置

  • strings.Join(a[]string, sep string) join操作

package mainimport (        "fmt"        "strings")// 字符串func main(){        // \ 本来是具有特殊含义的,告诉程序\就是一个单纯的\        path := "\"E:\\36期Python全栈开发资料\\Administrator(8E5370323193)\\预习(2)\""        path2 := "'E:\\36期Python全栈开发资料\\Administrator(8E5370323193)\\预习(2)'"        fmt.Println(path)        fmt.Println(path2)        s := "I'm ok"        fmt.Println(s)        // 多行的字符串        s2 := `        世情薄        人情恶        雨送黄昏花易落        `        fmt.Println(s2)        s3 := `E:\36期Python全栈开发资料\Administrator(8E5370323193)\预习(2)`        fmt.Println(s3)        // 字符串相关操作        fmt.Println(len(s3))        // 字符串拼接        name := "理想"        world := "远大"        ss := name + world        fmt.Println(ss)        ss1 := fmt.Sprintf("%s%s", name, world)        // fmt.Printf("%s%s", name, world)        fmt.Println(ss1)        // 分割        ret := strings.Split(s3, "\\")        fmt.Println(ret)        // 包含        fmt.Println(strings.Contains(ss, "理想"))        // 前缀        fmt.Println(strings.HasPrefix(ss, "理想"))        // 后缀        fmt.Println(strings.HasSuffix(ss, "理想"))        s4 := "abcded"        fmt.Println(strings.Index(s4, "c"))        fmt.Println(strings.LastIndex(s4, "c"))        fmt.Println(strings.Index(s4, "d"))        fmt.Println(strings.LastIndex(s4, "d"))        // 拼接        fmt.Println(strings.Join(ret, "+"))}

byte和rune类型

字符用单引号(’)包裹起来

Go 语言的字符有以下两种:

  • uint8类型,或者叫 byte 型,代表了ASCII码的一个字符。

  • rune类型,代表一个 UTF-8字符。rune类型实际是一个int32

字符串底层是一个byte数组,可以和[]byte类型相互转换。字符串是不能修改的 字符串是由byte字节组成,所以字符串的长度是byte字节的长度。 rune类型用来表示utf8字符,一个rune字符由一个或多个byte组成。

修改字符串

要修改字符串,需要先将其转换成[]rune或[]byte,完成后再转换为string。无论哪种转换,都会重新分配内存,并复制字节数组。

类型转换

强制类型转换的基本语法如下:

T(表达式)

其中,T表示要转换的类型。表达式包括变量、复杂算子和函数返回值等.

package mainimport (        "fmt")func main() {        s := "Hello 中国"        // len()求的是byte字节的数量        n := len(s)        fmt.Println(n)        // for i := 0; i < len(s); i++ {        //         fmt.Println(s[i])        //         fmt.Printf("%c\n", s[i]) // %c:字符        // }        // 字符串修改        s2 := "白萝卜" // [白 萝 卜]        s3 := []rune(s2) // 把字符串强制转换成了一个rune切片        s3[0] = '红' // 单引号表示字符        fmt.Println(string(s3)) // 把rune切片强制转换成字符串        c1 := "红"        c2 := '红' // rune(int32)        fmt.Printf("c1:%T c2:%T\n", c1, c2) // c1:string c2:int32        c3 := "H"        c4 := 'H'        c5 := byte('H')        fmt.Printf("c3:%T c4:%T\n", c3, c4) // c3:string c4:int32        fmt.Printf("c4:%d\n", c4) // c4:72        fmt.Printf("c5:%T\n", c5) // c5:uint8        // 类型转换        n1 := 10 // int        var f float64        f = float64(n1)        fmt.Println(f)        fmt.Printf("%T\n", f) // float64}

到此,关于"GO语言基本数据类型字符串怎么用"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!

字符 字符串 类型 语言 字节 引号 数据 理想 资料 学习 包裹 开发资料 长度 开发 强制 预习 代表 位置 前缀 后缀 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网金融监管科技数据 互联网最新的科技 互联网通讯科技 互联网科技战争 互联网金融 金融科技 互联网科技金融公司 中盈科技互联网信息有限公司 广州优美互联网科技 昭通云南众福互联网科技有限公司 金融科技与互联网金融相同和不同 昭通互联网科技选哪家 广州新华互联网科技学校电竞方面 沐思想互联网科技有限公司 互联网企业科技类企业如何做账 黑云互联网科技有限公司 领航科技大厦互联网公司 互联网安防科技感 知域互联网科技有限公司官网 利用互联网等科技手段 互联网 科技节活动 微视频大赛 互联网黑科技 无线互联网科技 上海亿帐通互联网科技 互联网科技项目计划书材料类 世界互联网科技公司市值排名 深圳市优智互联网科技有限公司 群盈汇互联网科技有限公司 上海科技产业互联网平台 银川新华互联网科技学校原画 科技互联网专业工作会议发言稿
0