提供された Go コードのエラーは、バイト型と文字列型を処理するときに必要な明示的な変換に起因します。エラー メッセージ「無効な操作: new_str str[i 1] (mismatched type string and byte)」は、基になる文字列 (new_str) とバイト (str[i 1]) を連結しようとしていることを示します。 str array.
この問題を解決するには、明示的な変換をバイト型に適用して文字列に変換する必要があります。これは、修正されたコードに見られるように、string() 関数を使用することで実現できます。
<code class="go">func g(str string) string { var i = 0 var new_str = "" for i < len(str)-1 { // Convert the byte to a string before concatenation new_str = new_str + string(str[i+1]) i = i + 1 } return new_str }</code>
明示的にバイトを文字列に変換することにより、コードは Go の型システムに従い、文字列を文字列なしで正常に連結します。タイプの不一致エラーが発生しました。
以上がGolang で「型が一致していません: 文字列とバイト」エラーを解決するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。