[go] 문자열 조각을 단일 문자열로 결합하는 방법은 무엇입니까?

package main

import (
"fmt"
"strings"
)

func main() {
reg := [...]string {"a","b","c"}
fmt.Println(strings.Join(reg,","))
}

다음과 같은 오류가 발생합니다.

prog.go : 10 : reg (유형 [3] string)을 문자열 인수의 [] string 유형으로 사용할 수 없습니다.

반복하고 var에 추가하는 것보다 더 직접적이고 더 나은 방법이 있습니까?



답변

질문 제목은 다음과 같습니다.

문자열 조각을 단일 문자열로 결합하는 방법은 무엇입니까?

하지만 사실 reg입니다 하지 슬라이스하지만, 길이 세 배열입니다. [...]string(이 경우)에 대한 구문 설탕입니다 [3]string.

실제 조각을 얻으려면 다음과 같이 작성해야합니다.

reg := []string {"a","b","c"}

(해보기 : https://play.golang.org/p/vqU5VtDilJ .)

우연히도 문자열 배열을 단일 문자열로 결합해야하는 경우 다음과 같이을 추가하여 배열에서 슬라이스를 가져올 수 있습니다 [:].

fmt.Println(strings.Join(reg[:], ","))

(사용해보세요 : https://play.golang.org/p/zy8KyC8OTuJ .)


답변

arrray가 아닌 슬라이스를 사용하십시오. 사용하여 만드십시오.

reg := []string {"a","b","c"}

대안은 결합 할 때 배열을 슬라이스로 변환하는 것입니다.

fmt.Println(strings.Join(reg[:],","))

슬라이스와 배열의 차이점에 대한 Go 블로그를 읽어보십시오 .


답변

이것은 2018 년에도 여전히 관련이 있습니다.

문자열로

import strings
stringFiles := strings.Join(fileSlice[:], ",")

다시 슬라이스로 돌아 가기

import strings
fileSlice := strings.Split(stringFiles, ",")


답변