[]string を []interface に変換する{}
この質問は、interface{} が任意の型を表現できるという誤解から生じています。したがって、[]interface{} は任意の []type を表すことができます。ただし、interface{} はそれ自体が型であり、[]interface{} と同等であるとは見なされません。
解決策:
[]string を[]インターフェース{}の場合、要素を宛先スライスに個別にコピーする必要があります。以下に例を示します。
func convertStringSliceToInterfaceSlice(strs []string) []interface{} { result := make([]interface{}, len(strs)) for i, str := range strs { result[i] = str } return result }
追加メモ:
[]byte と string の間で変換することはできますが、これはお勧めしません。 Interface{} は、さまざまなタイプのデータを表現するためのより汎用的な方法を提供します。ただし、interface{} は別のタイプであり、注意して使用する必要があることを覚えておくことが重要です。
以上がGo で「[]string」を「[]interface{}」に変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。