golang中字符串与数组,切片的转换

本文探讨了Go语言中字符串的特性,强调其不可变性,并指出从字符串到切片的转换需要注意的问题,特别是大数据量时的效率。同时,解释了字符串的内部结构和基于字符串创建切片的性质。还提到了字符串的不同转换方式及其运算。
摘要由CSDN通过智能技术生成

go语言将字符串作为一种原生的基本数据类型,字符串的初始化可以使用字符串的字面量

 var  a  =  "hello,world"

1) 字符串是常量,可以通过类似数组的索引访问其字节单元,但是不能修改某个字节的值

var a  =  "hello,world"

b := a[0]

a[1]='a'

package main

import "fmt"

func main() {
	var a = "hello , world"
	b := []byte(a)//此时打印b,以rane方式输出所有码元
	// b := a[0] // 数组a的第0个索引
	// fmt.Printf("%c", b) //以UTF-8形式展示所有
	// a[1] = 'a'
	fmt.Println(b)
}

按数组切割,数组不能修改值,所以

a[1] ='a'  是错误的

2)字符串转换为切片[]byte(s)要慎用,尤其是当数据量较大时,每转换一次都需要复制内容

3)字符

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值