为了账号安全,请及时绑定邮箱和手机立即绑定

golang-字符串

标签:
Go

字符串比较相等

func main() {
    fmt.Println("ADN" == "ADN")
    fmt.Println("ADN" == "adn")
    fmt.Println(strings.Compare("ADN", "ADN"))
    fmt.Println(strings.Compare("ADN", "adn"))
    fmt.Println(strings.EqualFold("ADN", "ADN"))
    fmt.Println(strings.EqualFold("ADN", "adn"))
}

Compare比"=="快,两种方法都区分大小写

EqualFold比较UTF-8编码在小写的条件下是否相等,不区分大小写。

字符串拼接

  • fmt.Sprintf 和 strings.Join 速度相当

  • string + 比上述二者快一倍

  • bytes.Buffer又比上者快约400-500倍

  • 如果循环内每次都临时声明一个bytes.Buffer来使用,会比持续存在慢50%,但是仍然很快

func main() {
    var c bytes.Buffer
    a := "ADN" + " so cool"
    b := strings.Join([]string{"ADN", "so", "cool"}, "-")
    c.WriteString("ADN ")
    c.WriteString("so ")
    c.WriteString("cool")
    fmt.Println(a)
    fmt.Println(b)
    fmt.Println(c.String())
}



作者:ifcoder
链接:https://www.jianshu.com/p/05a55a633de9

点击查看更多内容
1人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消