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

中文域名网站天津百度分公司

中文域名网站,天津百度分公司,西安到北京高铁,公司网站建设哪个最好前言 在go语言中,因为字符串只能被访问,不能被修改,所以进行字符串拼接的时候,golang都需要进行内存拷贝,造成一定的性能消耗。 方式1:操作符 特点:简单,可读性良好。每次拼接都…

前言

在go语言中,因为字符串只能被访问,不能被修改,所以进行字符串拼接的时候,golang都需要进行内存拷贝,造成一定的性能消耗。

方式1:操作符 +

特点:简单,可读性良好。每次拼接都会产生内存拷贝,性能一般。仅适用于字符串类型的变量。

示例代码:

str1 := "hello "
str2 := "world"
fmt.Println(str1 + str2) // hello world

方式2:strings.Join

特点:只能用于拼接字符串类型的切片。

示例:

slice1 := []string{"a","b","c"}
fmt.Println(strings.Join(slice1," ")) // a b c
fmt.Println(strings.Join(slice1,"")) // abc

方式3:fmt.Sprint

标准库 fmt 中的 Sprint,Sprintf 和 Sprintln 方法,也是比较常用的一种字符串拼接方式,它的特点是可以拼接其它类型,涉及类型转换,底层实现使用 []byte 字节切片,但是性能一般,所以,该方式适用于少量包含其它非字符串类型变量进行字符串拼接的场景。

示例:

str1 := "hello "
str2 := "world"
str4 := fmt.Sprint(str1,str2)
fmt.Println(str4)
str5 := fmt.Sprintf("name is %s, and age is %d \n",str2, 17)
fmt.Println(str5)

方式4:bytes.Buffer类型

标准库 bytes 中的 Buffer 类型,该类型中 WriteString 方法和 String 方法配合使用,也可以实现字符串拼接,它的特点是可以拼接字符串、字符和 Unicode,底层实现使用 []byte,但是涉及 string[]byte 之间的转换,性能一般,因为 WriteString 方法使用的 buffer 太长,会导致 panic,所以,该方式适用于少量字符变量和字符串变量进行字符串拼接的场景。

示例代码:

import "bytes"
var b bytes.Buffer
b.WriteString("My ")
b.WriteString("name ")
b.WriteString("is ")
b.WriteString("Bob.")
str6 := b.String()
fmt.Println(str6) // My name is Bob.

方式5:strings.Builder 类型

标准库 strings 中的 Builder 类型,该类型中 WriteString 方法和 String 方法配合使用,也可以实现字符串拼接,使用方式和 bytes.Buffer 相同,可以拼接字符串、字符和 Unicode,也会涉及 string[]byte 之间的转换,但是,它使用 unsafe.Pointer 优化了 string[]byte 之间的转换,所以,在大量字符串拼接的场景,推荐使用该种方式。

示例代码:

var c strings.Builder
c.WriteString("My ")
c.WriteString("name ")
c.WriteString("is ")
c.WriteString("Hanlei.")
str7 := c.String()
fmt.Println(str7) // My name is Hanlei.
http://www.dtcms.com/wzjs/465270.html

相关文章:

  • 网站域名注册机制百度集团官网
  • 做国内贸易的网站app推广公司怎么对接业务
  • 推广网站怎样做seo是搜索引擎营销吗
  • 广州响应网站建设app平台搭建需要多少钱
  • 用什么软件做商务网站成都官网seo厂家
  • 常州h5网站建设音乐接单推广app平台
  • 哪里可以做足球网站it培训机构出来能找到工作吗
  • 电商网站有哪些功能google官方下载安装
  • 网站风格下载线上培训课程
  • 福州外贸网站制作怎样看网页的友情链接
  • 郑州加盟网站建设营销一体化平台
  • 西安做效果图的公司百度seo站长工具
  • b2c网站建设公司新浪微指数
  • 鞍山市城乡建设委员会网站成都网站快速排名软件
  • 有什么做任务接单赚钱网站seo实战培训教程
  • 重庆企业网站推广流程关键词是指什么
  • 台州网站建设优化网站推广和优化的原因网络营销
  • 阜蒙县建设镇官方网站年度关键词
  • 网站设计和备案中国免费广告网
  • 做商品网站的教学视频网站建设合同模板
  • 基础很差去公司做网站怎么制作网页广告
  • 用什么网软件做网站最新新闻国内大事件
  • 政府网站建设规范西部数码域名注册
  • 学做网站零基础线下引流推广方法
  • 如何做免费网站常用于网站推广的营销手段是
  • 什么是网站推广查域名网站
  • 网站建设成本友情链接网站源码
  • 广州自建网站哪家服务好搜索引擎优化大致包含哪些内容或环节
  • java做网站例子互联网推广招聘
  • 名人堂网站建设seo基础知识包括什么