广告
返回顶部
首页 > 资讯 > 后端开发 > GO >go语言数据类型之字符串string
  • 681
分享到

go语言数据类型之字符串string

2024-04-02 19:04:59 681人浏览 泡泡鱼
摘要

1.Go语言String的本质就是一个[]byte,所以他们之间可以互相转换,byte数组的长度就是字符串的长度。 func StringTest1() { str := "H

1.Go语言String的本质就是一个[]byte,所以他们之间可以互相转换,byte数组的长度就是字符串的长度。

func StringTest1() {
   str := "Hello,World"
   a := str[0]
   b := str[1]
   fmt.Printf("a=%c\n", a)
   fmt.Printf("b=%c\n", b)
}

 结果

a=H 
b=e 
str=Mello,World

2.字符串的值一旦指定,就不能进行修改。如果想修改,则可以先将字符串装换成slice。

//当试图去修改str时候
str[0] = 'M'

会出现如下错误提示

func StringTest1() {
   str := "Hello,World"
   a := str[0]
   b := str[1]
   fmt.Printf("a=%c\n", a)
   fmt.Printf("b=%c\n", b)

   var byteSlice []byte
   byteSlice = []byte(str)
   byteSlice[0] = 'M'
   str = string(byteSlice)
   fmt.Printf("str=%s\n", str)
}

结果

a=H 
b=e 
str=Mello,World

3.rune表示utf8的字符,一个rune字符由一个或多个byte组成。

rune和字符串长度之间是什么肥四?可以参考下面的例子:

func StringTest2() {

    str2 := "Hello,世界"

    var str2ByteSlice []byte
    str2ByteSlice = []byte(str2)

    var str2RuneSlice []rune
    str2RuneSlice = []rune(str2)

    fmt.Printf("strLen=%v\n",len(str2) )
    fmt.Printf("str2ByteSlice=%v\n",len(str2ByteSlice) )
    fmt.Printf("str2RuneSlice=%v\n",len(str2RuneSlice) )

    for i:=0;i<len(str2RuneSlice);i++{
        var b = str2RuneSlice[i]
        fmt.Printf("str2RuneSlice[%d]=%c\n" ,i,b)
    }

结果是什么?

strLen=12 
str2ByteSlice=12 
str2RuneSlice=8

从结果看到

①字符串的长度和byte切片的长度是一致的

②字符串的长度要比rune切片的长度大,说明一个中文字符需要占用多个byte,这里是就是3个,所以才有后面 str2RuneSlice = 8这个结果

进而我们可以遍历这个rune切片,追加下面代码

for i:=0;i<len(str2RuneSlice);i++{
        var b = str2RuneSlice[i]
        fmt.Printf("str2RuneSlice[%d]=%c\n" ,i,b)
    }

结果

str2RuneSlice[0]=H 
str2RuneSlice[1]=e 
str2RuneSlice[2]=l 
str2RuneSlice[3]=l 
str2RuneSlice[4]=o 
str2RuneSlice[5]=, 
str2RuneSlice[6]=世 
str2RuneSlice[7]=界

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对编程网的支持。如果你想了解更多相关内容请查看下面相关链接

您可能感兴趣的文档:

--结束END--

本文标题: go语言数据类型之字符串string

本文链接: https://www.lsjlt.com/news/164384.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • go语言数据类型之字符串string
    1.Go语言String的本质就是一个[]byte,所以他们之间可以互相转换,byte数组的长度就是字符串的长度。 func StringTest1() { str := "H...
    99+
    2022-11-13
  • GO语言入门学习之基本数据类型字符串
    目录字符串字符串转义符byte和rune类型修改字符串类型转换总结字符串 Go语言中的字符串以原生数据类型出现。 Go 语言里的字符串的内部实现使用UTF-8编码。 字符串的值为双引...
    99+
    2022-11-13
  • GO语言基本数据类型字符串怎么用
    这篇文章主要介绍“GO语言基本数据类型字符串怎么用”,在日常操作中,相信很多人在GO语言基本数据类型字符串怎么用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”GO语言基本数据类型字符串怎么用”的疑惑有所帮助!...
    99+
    2023-06-30
  • MySQL数据类型之浅谈字符串(string)
    目录字符类型(CHAR Types)可变字符类型(Varchar Types)二进制类型(BINARY Types)可变二进制类型(VARBINARY Types)二进制大对象类型(BLOB Types)文本类型(Tex...
    99+
    2022-10-01
  • Python标准数据类型-String(字符串)
    ✅作者简介:CSDN内容合伙人、阿里云专家博主、51CTO专家博主、新星计划第三季python赛道Top1 📃个人主页:hacker707的csdn博客 🔥系列专栏...
    99+
    2023-09-03
    python 字符串 原力计划
  • Python之路-基础数据类型之字符串
    字符串是不可变的数据类型 索引(下标) 我们在日常生活中会遇到很多类似的情况,例如吃饭排队叫号,在学校时会有学号,工作时会有工号,这些就是一种能保证唯一准确的手段,在计算机中也是一样,它就叫索引,也叫下标, 注意:索引都是从0开始,只有...
    99+
    2023-01-30
    之路 字符串 数据类型
  • go语言中有没有字符类型
    这篇文章将为大家详细讲解有关go语言中有没有字符类型,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。Go语言的字符类型有以下两种:一种是 uint8 类型,或者叫 byte 型,代表了 ASC...
    99+
    2023-06-15
  • Python基本数据类型之字符串str
    字符串的表示方式 单引号 ' ' 双引号 " " 多引号 """ """"  、 ''' ''' print("hello world") ...
    99+
    2022-11-12
  • go语言将int转为字符串类型的操作步骤
    这篇文章主要介绍了go语言将int转为字符串类型的操作步骤,具有一定借鉴价值,需要的朋友可以参考下。下面就和我一起来看看吧。转换方法:1、使用Itoa()函数,语法“strconv.Itoa(num)”;2、使用FormatInt()函数,...
    99+
    2023-06-15
  • MySQL基础教程3 —— 数据类型之字符串类型
    字符串类型指CHAR、VARCHAR、BINARY、VARBINARY、BLOB、TEXT、ENUM和SET。该节描述了这些类型如何工作以及如何在查询中使用这些类型。 1. CHAR和VARCHAR类型 CHAR和V...
    99+
    2022-05-28
    enum MySQL set varchar 字符串 数据类型
  • go语言如何将整型转为字符串
    本篇内容介绍了“go语言如何将整型转为字符串”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!转换方法:1、用fmt包的Sprintf(),支持...
    99+
    2023-07-04
  • go语言int64整型转字符串的实现
    go语言中string(int)会把int当成UTF-8的Unicode值,转换成对应的字符,标准库strconv是专门用来实现基本数据类型和其字符串表示的相互转换。 package...
    99+
    2023-03-07
    go语言int64转字符串 go语言整型转字符串
  • go语言怎么将整型转为字符串
    转换方法:1、用fmt包的Sprintf(),支持格式化变量转为字符串,语法“fmt.Sprintf("%d", num)”;2、用strconv包的Itoa(),支持将int类型转换成字符串,语法“strconv.It...
    99+
    2023-05-14
    go语言 Golang
  • Go语言strconv包实现字符串和数值类型的相互转换
    目录string 与 int 类型之间的转换Itoa():整型转字符串Atoi():字符串转整型Parse 系列函数ParseBool()ParseInt()ParseUnit...
    99+
    2022-06-07
    GO 字符串 值类型 字符
  • MySQL数据类型--------字符串类型实战
    1. 背景  * MySQL支持的字符串类型有CHAR、VARCHAR、二进制、var二进制、BLOB、文本等等。2. 字符串类型所需的存储和值范围类型说明N的含义是否有字符集最大长度C...
    99+
    2022-10-18
  • go语言int64整型转字符串如何实现
    本篇内容介绍了“go语言int64整型转字符串如何实现”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!go语言中string(int)会把in...
    99+
    2023-07-05
  • 数据类型之数字类型—运算符
    数字类型(Number)可分为以下几种:  整 形(int)    浮点型(float)    布 尔(bool)    长整形(long)    复 数(complex) 一、整 形(int)   整形就是整数类型   num =...
    99+
    2023-01-30
    数据类型 运算符 类型
  • C语言中字符串与各数值类型之间的转换方法
    C语言的算法设计中,经常会需要用到字符串,而由于c语言中字符串并不是一个默认类型,其标准库stdlib设计了很多函数方便我们处理字符串与其他数值类型之间的转换。 首先放上一段展示各函...
    99+
    2022-11-11
  • Go语言字符串如何转为数组
    本文小编为大家详细介绍“Go语言字符串如何转为数组”,内容详细,步骤清晰,细节处理妥当,希望这篇“Go语言字符串如何转为数组”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。转换方法:1、用Fields()按空格分割...
    99+
    2023-07-04
  • Go语言字符串怎么转为数组
    转换方法:1、用Fields()按空格分割字符串转为数组,语法“arr := strings.Fields(s)”;2、用Split()按字符串分割字符串,语法“arr := strings.Split(s,sep)”;3、用FieldsF...
    99+
    2023-05-14
    go语言 Golang
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作