当前位置: 首页 > article >正文

go字符、字符串等

编码:https://blog.csdn.net/Deft_MKJing/article/details/79460485

go语言没有char。

1. byte

  1. uint8,处理ASCII或UTF-8编码的字节,string的单个字符是byte,还可以存储二进制数据,但不是处理二进制数据,处理二进制数据需要binary包。
  2. UTF-8是1-4字节变长字符,UTF-8是Unicode的一种实现。
  3. 类型转换
    []byte是一个字节切片(slice of bytes)。它是一个动态数组,用于存储字节(byte)类型的元素。在Go中,byte是uint8的别名,它是一个无符号的8位整数,取值范围是0~255。
ss := []byte(s)  // 类型转换,将字符串s转换成一个字节切片[]byte。因为字符串string在Go中是以不可变的,而字节切片则提供了对这些字节的可变访问。

var a string
a[n]  // 返回byte类型,因为string底层是字节数组

2. rune

  1. rune:int32 ,处理所有Unicode字符。

3. string

  1. 不可变类型
  2. 底层是[]byte
  3. string的长度len(string)是string转为[]byte后字节数组里元素的个数,而不是表面的字符个数。例如,汉字对应3个byte。
  4. string可以和[]byte,也可以和[]rune相互转换。
  5. 格式化字符串
message := fmt.Sprintf("Hello, my name is %s and I am %d years old.", name, age)
  1. 字符串操作
    strings是一个标准库包,提供了用于操作字符串的函数。这个包包含了许多实用的功能,比如查找子字符串、分割字符串、连接字符串、去除空格、转换大小写等。
strings.Join(elems []string, sep string) string  // 连接字符串

names := []string{"Alice", "Bob", "Charlie"}
joined := strings.Join(names, ", ")  // 结果:Alice, Bob, Charlie

http://www.kler.cn/a/443775.html

相关文章:

  • 成方金融科技后端部分笔试题 - 解析
  • LabVIEW电机控制中的主动消抖
  • 【Windows版】opencv 和opencv_contrib配置
  • 摩尔信使MThings的逻辑控制功能范例
  • 题海拾贝:力扣 86.分隔链表
  • 多协议视频监控汇聚/视频安防系统Liveweb搭建智慧园区视频管理平台
  • 3D 高斯溅射 (Gaussian Splatting)技术,一种实现超写实、高效渲染的突破性技术
  • 关于Unity VFX 在Spawn状态的一些笔记
  • 深入理解Kafka:核心设计与实践原理读书笔记
  • python练习:“互联网 +” 时代的出租车资源配置的数学建模(一)
  • Upload-labs 靶场(通关攻略)
  • 安当SMS集中式凭据管理系统,HashiCorp Vault的国产化替代解决方案
  • 轻量级+鲸鱼优化!WOA-LightGBM鲸鱼优化算法优化轻量级梯度提升机分类预测Matlab实现
  • 计算机网络基础--WebSocket
  • 使用C语言连接MySQL
  • 7. 检查是否存在满足条件的数字组合
  • jmeter中的prev对象
  • [机器学习]XGBoost(4)——系统设计(含代码实战)
  • 如何远程登录路由器
  • Nautilus源码编译傻瓜式教程二
  • 《类和对象:基础原理全解析(上篇)》
  • finereport新的数据工厂插件
  • Spring 启动流程!!!
  • 分布式光伏电站气象站
  • 每天40分玩转Django:Django缓存视图
  • 98. 验证二叉搜索树(java)