文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

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

2023-06-30 04:34

关注

这篇文章主要介绍“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              判断是否包含 

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 + worldfmt.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 语言的字符有以下两种:

字符串底层是一个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:int32c3 := "H"c4 := 'H'c5 := byte('H')fmt.Printf("c3:%T c4:%T\n", c3, c4) // c3:string c4:int32fmt.Printf("c4:%d\n", c4) // c4:72fmt.Printf("c5:%T\n", c5) // c5:uint8// 类型转换n1 := 10 // intvar f float64f = float64(n1)fmt.Println(f)fmt.Printf("%T\n", f) // float64}

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

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯