Go 中Map 初始化方法的效能比較
Golang 中初始化Map 時,常見的做法有兩種:使用make 或大號{ }。本文研究了這些方法之間任何潛在的性能差異。
使用make 初始化
<code class="go">myMap = make(map[string]int)</code>
使用大括號初始化
<code class="go">myMap = map[string]int{}</code>
進行基準測試來比較這兩種方法的效能。使用以下程式碼:
基準測試結果<code class="go">package bench import "testing" var result map[string]int func BenchmarkMakeLiteral(b *testing.B) { var m map[string]int for n := 0; n < b.N; n++ { m = InitMapLiteral() } result = m } func BenchmarkMakeMake(b *testing.B) { var m map[string]int for n := 0; n < b.N; n++ { m = InitMapMake() } result = m } func InitMapLiteral() map[string]int { return map[string]int{} } func InitMapMake() map[string]int { return make(map[string]int) }</code>
多次基準運行在兩種初始化方法之間產生的效能差異可以忽略不計。結果足夠接近,可以被認為是等效的。
結論
根據基準測試結果,使用 make 或花括號初始化映射之間沒有顯著的性能差異。兩種方法之間的選擇取決於個人喜好或特定用例要求。
以上是以下是一些適合您的文章的基於問題的文章標題: * Go Map 初始化:`make` 還是大括號比較快? * 地圖表現對決:Golang 中的 `make` 與大括號 * 哪個W的詳細內容。更多資訊請關注PHP中文網其他相關文章!