ホームページ >バックエンド開発 >Golang >Go で Int32 を文字列に変換する方法: どの方法が最も速いですか?

Go で Int32 を文字列に変換する方法: どの方法が最も速いですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-11-03 20:27:291062ブラウズ

How to Convert an Int32 to a String in Go: Which Method is Fastest?

Go での Int32 から String への変換: Int と Int64 を超えて

Go では、必要なく int32 から文字列への変換を実行できます。 int または int64 への中間変換用。これを実現するためのいくつかのアプローチを次に示します。

1. fmt.Sprint(i) の使用

s := fmt.Sprint(i)

このメソッドは、簡単な 1 行のソリューションを提供します。

2.カスタム変換関数の作成

最適なパフォーマンスを得るために、カスタム変換関数を作成できます。

func String(n int32) string {
    // Implementation details
    return string(buf[pos:])
}

3. strconv.Itoa(int(i)) の使用

s := strconv.Itoa(int(i))

このアプローチでは最初に int への変換が必要ですが、比較的高速な解決策が提供されます。

4. strconv.FormatInt(int64(i), 10)

s := strconv.FormatInt(int64(i), 10)

の使用このメソッドは、int32 を string に直接変換するため、strconv.Itoa よりも高速に実行されます。

パフォーマンスの比較

これらのメソッドの効率を比較するために、5,000 万回の反復でベンチマークを実行しました。

Method Time Taken
String 5.5923198s
String2 5.5923199s
strconv.FormatInt(int64(i), 10) 5.9133382s
strconv.Itoa(int(i)) 5.9763418s
fmt.Sprint(i) 13.5697761s

結果から明らかなように、カスタム変換関数 String が提供します。最速の実行時間。

以上がGo で Int32 を文字列に変換する方法: どの方法が最も速いですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。