...인터페이스 유형의 다양한 인수를 허용하는 메서드가 있는 상황을 생각해 보세요.{} . 이 슬라이스 앞에 문자열을 추가하려면 추가()를 직접 사용하는 데 문제가 발생할 수 있습니다.
이러한 경우 표준 추가() 함수는 첫 번째 인수가 슬라이스이고 후속 인수가 해당 유형과 일치할 것으로 예상합니다.
func append(slice []Type, elems ...Type) []Type
이 문제를 해결하려면 초기 문자열에 대한 래퍼 []인터페이스{}를 만든 다음 추가()를 사용하여 문자열과 가변 슬라이스:
s := "initial string" rest := []interface{}{"element 1", "element 2"} all := append([]interface{}{s}, rest...) fmt.Println(all)
출력:
[initial string element 1 element 2]
문자열을 []인터페이스{}로 래핑하여 추가()에 대해 예상되는 유형과 일치하는지 확인하고 다음을 허용합니다. 이를 가변 슬라이스 앞에 성공적으로 추가합니다.
위 내용은 Go에서 Variadic 인터페이스 슬라이스 앞에 문자열을 추가하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!