[Go] 字符串遍历数据类型问题

字符串遍历问题

在使用for i,v:=range str遍历字符串时

  • str[i]是unit8(byte)类型,返回的是单个字节
    字符串在Go中是以字节序列的形式存储的,而 str[i] 直接访问了这个字节序列中的第 i 个字节。如果字符串中的字符是单字节的ASCII字符,那么 s[i] 就足以表示该字符。但是,如果字符是多字节的Unicode字符,那么 s[i] 就只是该字符的第一个字节,而不是整个字符。

  • v是int32(rune)类型,返回的是字符的unicode编码

func main() {
	str := "hello,world!你好,世界!"
	for i, _ := range str {
		fmt.Print(str[i], " ")
	}
	//104 101 108 108 111 44 119 111 114 108 100 33 228 229 239 228 231 239
	fmt.Println()
	for _, v := range str {
		fmt.Print(v, " ")
	}
	//104 101 108 108 111 44 119 111 114 108 100 33 20320 22909 65292 19990 30028 65281
}

相关推荐

  1. [Go] 字符串类型问题

    2024-07-10 16:22:04       20 阅读
  2. react翻页

    2024-07-10 16:22:04       18 阅读
  3. 对dict类型python

    2024-07-10 16:22:04       47 阅读
  4. 组的列

    2024-07-10 16:22:04       49 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-10 16:22:04       51 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-10 16:22:04       54 阅读
  3. 在Django里面运行非项目文件

    2024-07-10 16:22:04       44 阅读
  4. Python语言-面向对象

    2024-07-10 16:22:04       55 阅读

热门阅读

  1. 51单片机第26步_单片机工作在空闲模式

    2024-07-10 16:22:04       16 阅读
  2. QT调节屏幕亮度

    2024-07-10 16:22:04       21 阅读
  3. Spring Boot手写starter

    2024-07-10 16:22:04       23 阅读
  4. 【国产开源可视化引擎Meta2d.js】视频

    2024-07-10 16:22:04       22 阅读
  5. Apache Doris的分区与分桶原理解析

    2024-07-10 16:22:04       14 阅读
  6. Stream流的简单用法

    2024-07-10 16:22:04       26 阅读
  7. liunx上修改Firefox版本号

    2024-07-10 16:22:04       17 阅读
  8. PS设计新手如何学习?沈阳PS设计线下培训

    2024-07-10 16:22:04       19 阅读
  9. 深度学习进阶

    2024-07-10 16:22:04       16 阅读