教程集 www.jiaochengji.com
教程集 >  Golang编程  >  golang教程  >  正文 Golang byte 拼接方法性能对比

Golang byte 拼接方法性能对比

发布时间:2022-02-26   编辑:jiaochengji.com
教程集为您提供Golang byte 拼接方法性能对比等资源,欢迎您收藏本站,我们将为您提供最新的Golang byte 拼接方法性能对比资源
<svg xmlns="http://www.w3.org/2000/svg" style="display: none;"><path stroke-linecap="round" d="M5,0 0,2.5 5,5z" id="raphael-marker-block" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);"/></svg>

<h3>Golang byte 拼接方法性能对比</h3>
最近项目上遇到需要将[]Byte进行拼接的需求,对[]Byte拼接的各种方法进行了对比,测试代码如下:

<pre><code class="lang-javascript hljs"><span class="token keyword">package</span> main <span class="token keyword">import</span> <span class="token punctuation">(</span> <span class="token string">"bytes"</span> <span class="token string">"fmt"</span> <span class="token string">"time"</span> <span class="token punctuation">)</span> func <span class="token function">main</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token punctuation">{</span> count <span class="token punctuation">:</span><span class="token operator">=</span> <span class="token number">1000000</span> oneSerail <span class="token punctuation">:</span><span class="token operator">=</span> <span class="token punctuation">[</span><span class="token punctuation">]</span>byte<span class="token punctuation">{</span><span class="token number">0</span><span class="token punctuation">,</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token number">2</span><span class="token punctuation">,</span> <span class="token number">3</span><span class="token punctuation">,</span> <span class="token number">4</span><span class="token punctuation">,</span> <span class="token number">5</span><span class="token punctuation">,</span> <span class="token number">6</span><span class="token punctuation">,</span> <span class="token number">7</span><span class="token punctuation">,</span> <span class="token number">8</span><span class="token punctuation">,</span> <span class="token number">9</span><span class="token punctuation">}</span> s0 <span class="token punctuation">:</span><span class="token operator">=</span> time<span class="token punctuation">.</span><span class="token function">Now</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token keyword">for</span> i <span class="token punctuation">:</span><span class="token operator">=</span> <span class="token number">0</span><span class="token punctuation">;</span> i <span class="token operator"><</span> count<span class="token punctuation">;</span> i<span class="token operator"> </span> <span class="token punctuation">{</span> str0 <span class="token punctuation">:</span><span class="token operator">=</span> <span class="token function">make</span><span class="token punctuation">(</span><span class="token punctuation">[</span><span class="token punctuation">]</span><span class="token punctuation">[</span><span class="token punctuation">]</span>byte<span class="token punctuation">,</span> <span class="token number">8</span><span class="token punctuation">)</span> str0<span class="token punctuation">[</span><span class="token number">0</span><span class="token punctuation">]</span> <span class="token operator">=</span> oneSerail<span class="token punctuation">[</span><span class="token number">0</span><span class="token punctuation">:</span><span class="token number">4</span><span class="token punctuation">]</span> str0<span class="token punctuation">[</span><span class="token number">1</span><span class="token punctuation">]</span> <span class="token operator">=</span> oneSerail<span class="token punctuation">[</span><span class="token number">4</span><span class="token punctuation">:</span><span class="token number">6</span><span class="token punctuation">]</span> str0<span class="token punctuation">[</span><span class="token number">2</span><span class="token punctuation">]</span> <span class="token operator">=</span> oneSerail<span class="token punctuation">[</span><span class="token number">6</span><span class="token punctuation">:</span><span class="token number">10</span><span class="token punctuation">]</span> str0<span class="token punctuation">[</span><span class="token number">3</span><span class="token punctuation">]</span> <span class="token operator">=</span> oneSerail<span class="token punctuation">[</span><span class="token number">0</span><span class="token punctuation">:</span><span class="token number">2</span><span class="token punctuation">]</span> str0<span class="token punctuation">[</span><span class="token number">4</span><span class="token punctuation">]</span> <span class="token operator">=</span> oneSerail<span class="token punctuation">[</span><span class="token number">2</span><span class="token punctuation">:</span><span class="token number">6</span><span class="token punctuation">]</span> str0<span class="token punctuation">[</span><span class="token number">5</span><span class="token punctuation">]</span> <span class="token operator">=</span> oneSerail<span class="token punctuation">[</span><span class="token number">6</span><span class="token punctuation">:</span><span class="token number">8</span><span class="token punctuation">]</span> str0<span class="token punctuation">[</span><span class="token number">6</span><span class="token punctuation">]</span> <span class="token operator">=</span> oneSerail<span class="token punctuation">[</span><span class="token number">0</span><span class="token punctuation">:</span><span class="token number">4</span><span class="token punctuation">]</span> str0<span class="token punctuation">[</span><span class="token number">7</span><span class="token punctuation">]</span> <span class="token operator">=</span> oneSerail<span class="token punctuation">[</span><span class="token number">8</span><span class="token punctuation">:</span><span class="token number">10</span><span class="token punctuation">]</span> bytes<span class="token punctuation">.</span><span class="token function">Join</span><span class="token punctuation">(</span>str0<span class="token punctuation">,</span> <span class="token punctuation">[</span><span class="token punctuation">]</span><span class="token function">byte</span><span class="token punctuation">(</span><span class="token string">""</span><span class="token punctuation">)</span><span class="token punctuation">)</span> <span class="token punctuation">}</span> e0 <span class="token punctuation">:</span><span class="token operator">=</span> time<span class="token punctuation">.</span><span class="token function">Now</span><span class="token punctuation">(</span><span class="token punctuation">)</span> d0 <span class="token punctuation">:</span><span class="token operator">=</span> e0<span class="token punctuation">.</span><span class="token function">Sub</span><span class="token punctuation">(</span>s0<span class="token punctuation">)</span> fmt<span class="token punctuation">.</span><span class="token function">Printf</span><span class="token punctuation">(</span><span class="token string">"time of way(0)=%v\n"</span><span class="token punctuation">,</span> d0<span class="token punctuation">)</span> s1 <span class="token punctuation">:</span><span class="token operator">=</span> time<span class="token punctuation">.</span><span class="token function">Now</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token keyword">for</span> i <span class="token punctuation">:</span><span class="token operator">=</span> <span class="token number">0</span><span class="token punctuation">;</span> i <span class="token operator"><</span> count<span class="token punctuation">;</span> i<span class="token operator"> </span> <span class="token punctuation">{</span> str1 <span class="token punctuation">:</span><span class="token operator">=</span> <span class="token function">make</span><span class="token punctuation">(</span><span class="token punctuation">[</span><span class="token punctuation">]</span>byte<span class="token punctuation">,</span> <span class="token number">0</span><span class="token punctuation">)</span> str1 <span class="token operator">=</span> <span class="token function">append</span><span class="token punctuation">(</span>str1<span class="token punctuation">,</span> oneSerail<span class="token punctuation">[</span><span class="token number">0</span><span class="token punctuation">]</span><span class="token punctuation">)</span> str1 <span class="token operator">=</span> <span class="token function">append</span><span class="token punctuation">(</span>str1<span class="token punctuation">,</span> oneSerail<span class="token punctuation">[</span><span class="token number">1</span><span class="token punctuation">]</span><span class="token punctuation">)</span> str1 <span class="token operator">=</span> <span class="token function">append</span><span class="token punctuation">(</span>str1<span class="token punctuation">,</span> oneSerail<span class="token punctuation">[</span><span class="token number">2</span><span class="token punctuation">]</span><span class="token punctuation">)</span> str1 <span class="token operator">=</span> <span class="token function">append</span><span class="token punctuation">(</span>str1<span class="token punctuation">,</span> oneSerail<span class="token punctuation">[</span><span class="token number">3</span><span class="token punctuation">]</span><span class="token punctuation">)</span> str1 <span class="token operator">=</span> <span class="token function">append</span><span class="token punctuation">(</span>str1<span class="token punctuation">,</span> oneSerail<span class="token punctuation">[</span><span class="token number">4</span><span class="token punctuation">]</span><span class="token punctuation">)</span> str1 <span class="token operator">=</span> <span class="token function">append</span><span class="token punctuation">(</span>str1<span class="token punctuation">,</span> oneSerail<span class="token punctuation">[</span><span class="token number">5</span><span class="token punctuation">]</span><span class="token punctuation">)</span> str1 <span class="token operator">=</span> <span class="token function">append</span><span class="token punctuation">(</span>str1<span class="token punctuation">,</span> oneSerail<span class="token punctuation">[</span><span class="token number">6</span><span class="token punctuation">]</span><span class="token punctuation">)</span> str1 <span class="token operator">=</span> <span class="token function">append</span><span class="token punctuation">(</span>str1<span class="token punctuation">,</span> oneSerail<span class="token punctuation">[</span><span class="token number">7</span><span class="token punctuation">]</span><span class="token punctuation">)</span> str1 <span class="token operator">=</span> <span class="token function">append</span><span class="token punctuation">(</span>str1<span class="token punctuation">,</span> oneSerail<span class="token punctuation">[</span><span class="token number">8</span><span class="token punctuation">]</span><span class="token punctuation">)</span> str1 <span class="token operator">=</span> <span class="token function">append</span><span class="token punctuation">(</span>str1<span class="token punctuation">,</span> oneSerail<span class="token punctuation">[</span><span class="token number">9</span><span class="token punctuation">]</span><span class="token punctuation">)</span> str1 <span class="token operator">=</span> <span class="token function">append</span><span class="token punctuation">(</span>str1<span class="token punctuation">,</span> oneSerail<span class="token punctuation">[</span><span class="token number">0</span><span class="token punctuation">]</span><span class="token punctuation">)</span> str1 <span class="token operator">=</span> <span class="token function">append</span><span class="token punctuation">(</span>str1<span class="token punctuation">,</span> oneSerail<span class="token punctuation">[</span><span class="token number">1</span><span class="token punctuation">]</span><span class="token punctuation">)</span> str1 <span class="token operator">=</span> <span class="token function">append</span><span class="token punctuation">(</span>str1<span class="token punctuation">,</span> oneSerail<span class="token punctuation">[</span><span class="token number">2</span><span class="token punctuation">]</span><span class="token punctuation">)</span> str1 <span class="token operator">=</span> <span class="token function">append</span><span class="token punctuation">(</span>str1<span class="token punctuation">,</span> oneSerail<span class="token punctuation">[</span><span class="token number">3</span><span class="token punctuation">]</span><span class="token punctuation">)</span> str1 <span class="token operator">=</span> <span class="token function">append</span><span class="token punctuation">(</span>str1<span class="token punctuation">,</span> oneSerail<span class="token punctuation">[</span><span class="token number">4</span><span class="token punctuation">]</span><span class="token punctuation">)</span> str1 <span class="token operator">=</span> <span class="token function">append</span><span class="token punctuation">(</span>str1<span class="token punctuation">,</span> oneSerail<span class="token punctuation">[</span><span class="token number">5</span><span class="token punctuation">]</span><span class="token punctuation">)</span> str1 <span class="token operator">=</span> <span class="token function">append</span><span class="token punctuation">(</span>str1<span class="token punctuation">,</span> oneSerail<span class="token punctuation">[</span><span class="token number">6</span><span class="token punctuation">]</span><span class="token punctuation">)</span> str1 <span class="token operator">=</span> <span class="token function">append</span><span class="token punctuation">(</span>str1<span class="token punctuation">,</span> oneSerail<span class="token punctuation">[</span><span class="token number">7</span><span class="token punctuation">]</span><span class="token punctuation">)</span> str1 <span class="token operator">=</span> <span class="token function">append</span><span class="token punctuation">(</span>str1<span class="token punctuation">,</span> oneSerail<span class="token punctuation">[</span><span class="token number">8</span><span class="token punctuation">]</span><span class="token punctuation">)</span> str1 <span class="token operator">=</span> <span class="token function">append</span><span class="token punctuation">(</span>str1<span class="token punctuation">,</span> oneSerail<span class="token punctuation">[</span><span class="token number">9</span><span class="token punctuation">]</span><span class="token punctuation">)</span> str1 <span class="token operator">=</span> <span class="token function">append</span><span class="token punctuation">(</span>str1<span class="token punctuation">,</span> oneSerail<span class="token punctuation">[</span><span class="token number">0</span><span class="token punctuation">]</span><span class="token punctuation">)</span> str1 <span class="token operator">=</span> <span class="token function">append</span><span class="token punctuation">(</span>str1<span class="token punctuation">,</span> oneSerail<span class="token punctuation">[</span><span class="token number">1</span><span class="token punctuation">]</span><span class="token punctuation">)</span> str1 <span class="token operator">=</span> <span class="token function">append</span><span class="token punctuation">(</span>str1<span class="token punctuation">,</span> oneSerail<span class="token punctuation">[</span><span class="token number">2</span><span class="token punctuation">]</span><span class="token punctuation">)</span> str1 <span class="token operator">=</span> <span class="token function">append</span><span class="token punctuation">(</span>str1<span class="token punctuation">,</span> oneSerail<span class="token punctuation">[</span><span class="token number">3</span><span class="token punctuation">]</span><span class="token punctuation">)</span> str1 <span class="token operator">=</span> <span class="token function">append</span><span class="token punctuation">(</span>str1<span class="token punctuation">,</span> oneSerail<span class="token punctuation">[</span><span class="token number">4</span><span class="token punctuation">]</span><span class="token punctuation">)</span> str1 <span class="token operator">=</span> <span class="token function">append</span><span class="token punctuation">(</span>str1<span class="token punctuation">,</span> oneSerail<span class="token punctuation">[</span><span class="token number">5</span><span class="token punctuation">]</span><span class="token punctuation">)</span> str1 <span class="token operator">=</span> <span class="token function">append</span><span class="token punctuation">(</span>str1<span class="token punctuation">,</span> oneSerail<span class="token punctuation">[</span><span class="token number">6</span><span class="token punctuation">]</span><span class="token punctuation">)</span> str1 <span class="token operator">=</span> <span class="token function">append</span><span class="token punctuation">(</span>str1<span class="token punctuation">,</span> oneSerail<span class="token punctuation">[</span><span class="token number">7</span><span class="token punctuation">]</span><span class="token punctuation">)</span> str1 <span class="token operator">=</span> <span class="token function">append</span><span class="token punctuation">(</span>str1<span class="token punctuation">,</span> oneSerail<span class="token punctuation">[</span><span class="token number">8</span><span class="token punctuation">]</span><span class="token punctuation">)</span> str1 <span class="token operator">=</span> <span class="token function">append</span><span class="token punctuation">(</span>str1<span class="token punctuation">,</span> oneSerail<span class="token punctuation">[</span><span class="token number">9</span><span class="token punctuation">]</span><span class="token punctuation">)</span> <span class="token punctuation">}</span> e1 <span class="token punctuation">:</span><span class="token operator">=</span> time<span class="token punctuation">.</span><span class="token function">Now</span><span class="token punctuation">(</span><span class="token punctuation">)</span> d1 <span class="token punctuation">:</span><span class="token operator">=</span> e1<span class="token punctuation">.</span><span class="token function">Sub</span><span class="token punctuation">(</span>s1<span class="token punctuation">)</span> fmt<span class="token punctuation">.</span><span class="token function">Printf</span><span class="token punctuation">(</span><span class="token string">"time of way(1)=%v\n"</span><span class="token punctuation">,</span> d1<span class="token punctuation">)</span> s2 <span class="token punctuation">:</span><span class="token operator">=</span> time<span class="token punctuation">.</span><span class="token function">Now</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token keyword">for</span> i <span class="token punctuation">:</span><span class="token operator">=</span> <span class="token number">0</span><span class="token punctuation">;</span> i <span class="token operator"><</span> count<span class="token punctuation">;</span> i<span class="token operator"> </span> <span class="token punctuation">{</span> str2 <span class="token punctuation">:</span><span class="token operator">=</span> <span class="token function">make</span><span class="token punctuation">(</span><span class="token punctuation">[</span><span class="token punctuation">]</span>byte<span class="token punctuation">,</span> <span class="token number">0</span><span class="token punctuation">)</span> str2 <span class="token operator">=</span> <span class="token function">append</span><span class="token punctuation">(</span>str2<span class="token punctuation">,</span> oneSerail<span class="token punctuation">[</span><span class="token number">0</span><span class="token punctuation">:</span><span class="token number">4</span><span class="token punctuation">]</span><span class="token operator">...</span><span class="token punctuation">)</span> str2 <span class="token operator">=</span> <span class="token function">append</span><span class="token punctuation">(</span>str2<span class="token punctuation">,</span> oneSerail<span class="token punctuation">[</span><span class="token number">4</span><span class="token punctuation">:</span><span class="token number">6</span><span class="token punctuation">]</span><span class="token operator">...</span><span class="token punctuation">)</span> str2 <span class="token operator">=</span> <span class="token function">append</span><span class="token punctuation">(</span>str2<span class="token punctuation">,</span> oneSerail<span class="token punctuation">[</span><span class="token number">6</span><span class="token punctuation">:</span><span class="token number">10</span><span class="token punctuation">]</span><span class="token operator">...</span><span class="token punctuation">)</span> str2 <span class="token operator">=</span> <span class="token function">append</span><span class="token punctuation">(</span>str2<span class="token punctuation">,</span> oneSerail<span class="token punctuation">[</span><span class="token number">0</span><span class="token punctuation">:</span><span class="token number">2</span><span class="token punctuation">]</span><span class="token operator">...</span><span class="token punctuation">)</span> str2 <span class="token operator">=</span> <span class="token function">append</span><span class="token punctuation">(</span>str2<span class="token punctuation">,</span> oneSerail<span class="token punctuation">[</span><span class="token number">2</span><span class="token punctuation">:</span><span class="token number">6</span><span class="token punctuation">]</span><span class="token operator">...</span><span class="token punctuation">)</span> str2 <span class="token operator">=</span> <span class="token function">append</span><span class="token punctuation">(</span>str2<span class="token punctuation">,</span> oneSerail<span class="token punctuation">[</span><span class="token number">6</span><span class="token punctuation">:</span><span class="token number">8</span><span class="token punctuation">]</span><span class="token operator">...</span><span class="token punctuation">)</span> str2 <span class="token operator">=</span> <span class="token function">append</span><span class="token punctuation">(</span>str2<span class="token punctuation">,</span> oneSerail<span class="token punctuation">[</span><span class="token number">0</span><span class="token punctuation">:</span><span class="token number">4</span><span class="token punctuation">]</span><span class="token operator">...</span><span class="token punctuation">)</span> str2 <span class="token operator">=</span> <span class="token function">append</span><span class="token punctuation">(</span>str2<span class="token punctuation">,</span> oneSerail<span class="token punctuation">[</span><span class="token number">4</span><span class="token punctuation">:</span><span class="token number">8</span><span class="token punctuation">]</span><span class="token operator">...</span><span class="token punctuation">)</span> str2 <span class="token operator">=</span> <span class="token function">append</span><span class="token punctuation">(</span>str2<span class="token punctuation">,</span> oneSerail<span class="token punctuation">[</span><span class="token number">8</span><span class="token punctuation">:</span><span class="token number">10</span><span class="token punctuation">]</span><span class="token operator">...</span><span class="token punctuation">)</span> <span class="token punctuation">}</span> e2 <span class="token punctuation">:</span><span class="token operator">=</span> time<span class="token punctuation">.</span><span class="token function">Now</span><span class="token punctuation">(</span><span class="token punctuation">)</span> d2 <span class="token punctuation">:</span><span class="token operator">=</span> e2<span class="token punctuation">.</span><span class="token function">Sub</span><span class="token punctuation">(</span>s2<span class="token punctuation">)</span> fmt<span class="token punctuation">.</span><span class="token function">Printf</span><span class="token punctuation">(</span><span class="token string">"time of way(2)=%v\n"</span><span class="token punctuation">,</span> d2<span class="token punctuation">)</span> s3 <span class="token punctuation">:</span><span class="token operator">=</span> time<span class="token punctuation">.</span><span class="token function">Now</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token keyword">for</span> i <span class="token punctuation">:</span><span class="token operator">=</span> <span class="token number">0</span><span class="token punctuation">;</span> i <span class="token operator"><</span> count<span class="token punctuation">;</span> i<span class="token operator"> </span> <span class="token punctuation">{</span> str3 <span class="token punctuation">:</span><span class="token operator">=</span> <span class="token function">make</span><span class="token punctuation">(</span><span class="token punctuation">[</span><span class="token punctuation">]</span>byte<span class="token punctuation">,</span> <span class="token number">30</span><span class="token punctuation">)</span> <span class="token keyword">for</span> j <span class="token punctuation">:</span><span class="token operator">=</span> <span class="token number">0</span><span class="token punctuation">;</span> j <span class="token operator"><</span> <span class="token number">30</span><span class="token punctuation">;</span> j<span class="token operator"> </span> <span class="token punctuation">{</span> str3<span class="token punctuation">[</span>j<span class="token punctuation">]</span> <span class="token operator">=</span> oneSerail<span class="token punctuation">[</span>j<span class="token operator">%</span><span class="token number">10</span><span class="token punctuation">]</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> e3 <span class="token punctuation">:</span><span class="token operator">=</span> time<span class="token punctuation">.</span><span class="token function">Now</span><span class="token punctuation">(</span><span class="token punctuation">)</span> d3 <span class="token punctuation">:</span><span class="token operator">=</span> e3<span class="token punctuation">.</span><span class="token function">Sub</span><span class="token punctuation">(</span>s3<span class="token punctuation">)</span> fmt<span class="token punctuation">.</span><span class="token function">Printf</span><span class="token punctuation">(</span><span class="token string">"time of way(3)=%v\n"</span><span class="token punctuation">,</span> d3<span class="token punctuation">)</span> s4 <span class="token punctuation">:</span><span class="token operator">=</span> time<span class="token punctuation">.</span><span class="token function">Now</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token keyword">for</span> i <span class="token punctuation">:</span><span class="token operator">=</span> <span class="token number">0</span><span class="token punctuation">;</span> i <span class="token operator"><</span> count<span class="token punctuation">;</span> i<span class="token operator"> </span> <span class="token punctuation">{</span> <span class="token keyword">var</span> buf bytes<span class="token punctuation">.</span>Buffer <span class="token keyword">for</span> j <span class="token punctuation">:</span><span class="token operator">=</span> <span class="token number">0</span><span class="token punctuation">;</span> j <span class="token operator"><</span> <span class="token number">3</span><span class="token punctuation">;</span> j<span class="token operator"> </span> <span class="token punctuation">{</span> buf<span class="token punctuation">.</span><span class="token function">Write</span><span class="token punctuation">(</span>oneSerail<span class="token punctuation">)</span> <span class="token punctuation">}</span> <span class="token comment">//fmt.Println(buf.Bytes())</span> <span class="token punctuation">}</span> e4 <span class="token punctuation">:</span><span class="token operator">=</span> time<span class="token punctuation">.</span><span class="token function">Now</span><span class="token punctuation">(</span><span class="token punctuation">)</span> d4 <span class="token punctuation">:</span><span class="token operator">=</span> e4<span class="token punctuation">.</span><span class="token function">Sub</span><span class="token punctuation">(</span>s4<span class="token punctuation">)</span> fmt<span class="token punctuation">.</span><span class="token function">Printf</span><span class="token punctuation">(</span><span class="token string">"time of way(4)=%v\n"</span><span class="token punctuation">,</span> d4<span class="token punctuation">)</span> <span class="token punctuation">}</span> </code></pre>

运行结果如下:

<pre><code class="lang-javascript hljs">time <span class="token keyword">of</span> <span class="token function">way</span><span class="token punctuation">(</span><span class="token number">0</span><span class="token punctuation">)</span><span class="token operator">=</span><span class="token number">194.6382</span>ms time <span class="token keyword">of</span> <span class="token function">way</span><span class="token punctuation">(</span><span class="token number">1</span><span class="token punctuation">)</span><span class="token operator">=</span><span class="token number">186.6535</span>ms time <span class="token keyword">of</span> <span class="token function">way</span><span class="token punctuation">(</span><span class="token number">2</span><span class="token punctuation">)</span><span class="token operator">=</span><span class="token number">136.7474</span>ms time <span class="token keyword">of</span> <span class="token function">way</span><span class="token punctuation">(</span><span class="token number">3</span><span class="token punctuation">)</span><span class="token operator">=</span><span class="token number">65.876</span>ms time <span class="token keyword">of</span> <span class="token function">way</span><span class="token punctuation">(</span><span class="token number">4</span><span class="token punctuation">)</span><span class="token operator">=</span><span class="token number">107.3008</span>ms </code></pre>

结果分析:
1,bytes.Join耗时最久,可能是因为在进行Join的时候需要进行重新内存分配导致;
2,单byte进行append耗时比bytes.Join短,但是有限;
3,[]byte…进行append的耗时比1和2短,因为append操作的次数比2少很多;
4,最快的方法,但是需要预知拼接后byte组的大小;
5,刚刚看到一篇文章,用bytes.Buffer来拼接。这个方法在已知拼接后byte组长度的情况下,没有4快,但是优势是在未知byte组长度的情况下,比1、2、3都快。

总结:golang的内存分配真的很耗时。

到此这篇关于“Golang byte 拼接方法性能对比”的文章就介绍到这了,更多文章或继续浏览下面的相关文章,希望大家以后多多支持JQ教程网!

您可能感兴趣的文章:
golang 几种字符串的连接方式
高性能 golang 生成指定长度随机字符串
golang []byte和string转换
Golang中[]byte与string转换
Golang基础 - 基本数据类型
美图秀秀拼图功能打造时尚海报效果教程
Go 加密解密算法总结
Go 学习笔记 02 | 基本数据类型以及 byte 和 rune 类型
【Go】slice的一些使用技巧
golang 开源json库使用笔记

[关闭]
~ ~