package main
import (
"fmt"
"strings"
)
func main() {
reg := [...]string {"a","b","c"}
fmt.Println(strings.Join(reg,","))
}
私にエラーを与えます:
prog.go:10:文字列への引数では、タイプ[] stringとしてreg(タイプ[3]文字列)を使用できません。結合
ループして変数に追加するよりも直接的な方法がありますか?
package main
import (
"fmt"
"strings"
)
func main() {
reg := [...]string {"a","b","c"}
fmt.Println(strings.Join(reg,","))
}
私にエラーを与えます:
prog.go:10:文字列への引数では、タイプ[] stringとしてreg(タイプ[3]文字列)を使用できません。結合
ループして変数に追加するよりも直接的な方法がありますか?
回答:
質問のタイトルは次のとおりです。
文字列のスライスを1つの文字列に結合する方法は?
実際に、reg
あるいないスライスが、長さ3の配列。[...]string
(この場合)の構文糖です[3]string
。
実際のスライスを取得するには、次のように記述する必要があります。
reg := []string {"a","b","c"}
(試してみてください:https : //play.golang.org/p/vqU5VtDilJ)
ちなみに、文字列の配列を1つの文字列に結合する必要がある場合は[:]
、次のようにを追加して配列からスライスを取得できます。
fmt.Println(strings.Join(reg[:], ","))
(試してみてください:https : //play.golang.org/p/zy8KyC8OTuJ)
スライスではなくスライスを使用してください。使用して作成するだけ
reg := []string {"a","b","c"}
代わりに、結合時に配列をスライスに変換することもできます。
fmt.Println(strings.Join(reg[:],","))
スライスと配列の違いについてGoブログを読んでください。
reg := []string {"a","b","c"}
ですか?