**

Strings-and-runes 字符串

**

rune类型字符**

代表一个 UTF-8 字符,当需要处理中文、日文或者其他复合字符时,则需要用到 rune 类型。rune 类型等价于 int32 类型。

byte类型字符

uint8 类型,或者叫 byte 型,代表了 ASCII 码的一个字符
golang中string底层是通过byte数组实现的。中文字符在unicode下占2个字节,在utf-8编码下占3个字节,而golang默认编码正好是utf-8。

举例子:

str := "你好a"
//golang中string底层是通过byte数组实现的,座椅直接求len 实际是在按字节长度计算  所以一个汉字占3个字节算了3个长度
fmt.Println("len(str):", len(str))

//以下两种都可以得到str的字符串长度

//golang中的unicode/utf8包提供了用utf-8获取长度的方法
fmt.Println("RuneCountInString:", utf8.RuneCountInString(str))

//通过rune类型处理unicode字符

fmt.Println("rune:", len([]rune(str)))

String 字符串和字符

//""   /  ''
//string不可变,不能对string中单独部分进行修改
//such as:string[0]='c'    xxx//可以string -> byte,修改byte,再转换回string
//可以    s := "hello"
//      s = "c" + s[1:] // 字符串虽不能更改,但可进行切片操作
//      fmt.Printf("%s\n", s)
//+ connect//type error
//package errors
//
func er() int {err := errors.New("ejlasflnaosfn")if err != nil {fmt.Print(err)}return 1
}

GO Strings-and-runes相关推荐

  1. Strings, bytes, runes and characters in Go

    本文翻译自golang官方 ,英文文章原地址 https://blog.golang.org/strings    ,主要介绍了 go中的 strings .bytes. runes .charact ...

  2. Strings and Runes

    字符串方法 字符串是否包含子字符串 fmt.Println("Contains:", strings.Contains("test", "es&quo ...

  3. Go 开发关键技术指南 | 敢问路在何方?(内含超全知识大图)

    作者 | 杨成立(忘篱) 阿里巴巴高级技术专家 Go 开发关键技术指南文章目录: 为什么你要选择 Go? Go 面向失败编程 带着服务器编程金刚经走进 2020 年 敢问路在何方? Go 开发指南大图 ...

  4. Golang的单引号、双引号与反引号用法

    看了目前国内网络上一些参考数榜首的几篇类似本标题的文章,觉得说得不够简明扼要直击本质,甚至有谬误.特此写下本文,以便参考. 单引号single quote: ' go语言中使用单引号给rune(gol ...

  5. C# dotnet 使用 OpenXml 解析 PPT 元素的坐标和宽度高度

    在阅读本文之前,我期望你能了解基础的 PPT 解析内容,或看我的入门级博客.本文将告诉大家如何从 PPT 里面解析出通用元素的 x 和 y 的值,以及元素的宽度和高度的值 在开始之前请看 C# dot ...

  6. 字符串编码(utf8)

    文章 Things about Unicode everyone needs to know golang: Strings, bytes, runes and characters in Go 编码 ...

  7. Go语言基础(codewars---6kyu和5kyu)

    文章目录 说明 一.String相关题 1.Stop gninnipS My sdroW!(6kyu) 2.Consecutive strings(6kyu) 3.Build Tower(6kyu) ...

  8. 官方教程:Go fuzzing模糊测试

    前言 Go 1.18在go工具链里引入了fuzzing模糊测试,可以帮助我们发现Go代码里的漏洞或者可能导致程序崩溃的输入.Go官方团队也在官网发布了fuzzing入门教程,帮助大家快速上手. 本人对 ...

  9. Go的简单入门:开始使用模糊测试

    开始使用模糊测试 文章目录 开始使用模糊测试 一.介绍 二.准备 三.实践 3.1 为你的代码创建一个目录 3.2 添加代码用于测试 写代码 运行代码 3.3 添加单元测试 写代码 运行代码 3.4 ...

  10. Strings、bytes and runes -- 就要学习Go语言

    原创文章,若需转载请注明出处! 欢迎扫码关注公众号「Golang来了」或者移步 www.seekload.net,查看更多精彩文章. Go 中的字符串值得特别关注,与其他语言相比,Go 中的字符串实现 ...

最新文章

  1. alibaba cloud is expensive
  2. 为什么在反向传播中感知器初始值不能为0_深度学习理论分享之——单层感知器简述...
  3. canvas1:简单介绍、开始使用、画直线+虚线
  4. 被LCD调戏睡不着了
  5. MOOCCube:基于MOOC相关研究的开源大规模数据仓库 ACL2020
  6. 【Java从0到架构师】JS_jQuery_BootStrap
  7. mysql 存储过程如何声明多个变量赋值_mysql存储过程:定义变量,赋值,判断,输出...
  8. 300 行代码带你秒懂 Java 多线程!| 原力计划
  9. Java Spring boot 企业微信点餐系统
  10. W3CSchool离线文档下载
  11. IDEA 字符编码转换问题
  12. Jmeter启动失败
  13. 巅峰阁批量卡android,卡iPhoneQQ在线
  14. 微信的“QQ邮箱提醒”接收发往网易163邮件
  15. 选择适合你的虚拟现实体验
  16. 用Python写一个新年倒计时
  17. 仿QQ浏览器mac版官网主页 html css3特效
  18. php断言什么意思,一起学习PHP中断言函数的使用
  19. 文华财经(第一面)HR面
  20. coursera 吴恩达 -- 第二课 Improving Deep Neural Networks :第一周课后习题(3)Gradient Checking

热门文章

  1. 通过QQ互联实现网站第三方登录
  2. 大数据标准化白皮书(2020版) 附下载地址
  3. 苹果电脑MacBook插入移动硬盘没有反应/不显示
  4. linux环境下GXL软件的安装
  5. rabbitmq和erlang版本对应关系
  6. Material Design 之Style(三)
  7. 推特Twitter高级搜索
  8. Windows8下使用Oracle10G的忧伤
  9. Win10已安装更新无法卸载怎么办?
  10. 绝对硬核的pdf编辑转换工具