当前位置:首页 > 科技  > 软件

[]byte与string的两种转换方式和底层实现

来源: 责编: 时间:2024-03-29 17:17:15 139观看
导读不过你发现没fasthttp关于string和[]byte的转换方式和大家平常普遍使用的方式不一样,fasthttp转换实现如下://[]byte转stringfunc b2s(b []byte) string { return *(*string)(unsafe.Pointer(&b))} //string转[]byte

不过你发现没fasthttp关于string和[]byte的转换方式和大家平常普遍使用的方式不一样,fasthttp转换实现如下:amK28资讯网——每日最新资讯28at.com

//[]byte转stringfunc b2s(b []byte) string {    return *(*string)(unsafe.Pointer(&b))} //string转[]bytefunc s2b(s string) (b []byte) {    bh := (*reflect.SliceHeader)(unsafe.Pointer(&b))    sh := (*reflect.StringHeader)(unsafe.Pointer(&s))    bh.Data = sh.Data    bh.Cap = sh.Len    bh.Len = sh.Len    return b}

为什么不用我们常见的string和[]byte的转换方式呢?这样做是怎么提高性能的呢?...amK28资讯网——每日最新资讯28at.com

带着这些疑问,今天将分享下并总结string和[]byte的转换方式,不同的转换方式之间的实现和区别!amK28资讯网——每日最新资讯28at.com


amK28资讯网——每日最新资讯28at.com

图片图片amK28资讯网——每日最新资讯28at.com

两种转换方式

如果此时此刻你刚好遇到面试官问你string和[]byte如何进行转换,有几种方式?你能答上来吗amK28资讯网——每日最新资讯28at.com

反正在写这篇文章之前小许估计是答不出来的,哈哈!amK28资讯网——每日最新资讯28at.com

毕竟知道的越多,不知道的也越多嘛amK28资讯网——每日最新资讯28at.com

那今天我们就来聊聊,继续往下读之前,我们先了解下这两种数据类型:amK28资讯网——每日最新资讯28at.com

string和[]byte

图片图片amK28资讯网——每日最新资讯28at.com

本文链接:http://www.28at.com/showinfo-26-80518-0.html[]byte与string的两种转换方式和底层实现

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

上一篇: 我们一起聊聊如何简化多个 if 的判断结构

下一篇: Promise.all 的异常处理,我希望大家一定要了解一下!

标签:
  • 热门焦点
Top