>백엔드 개발 >Golang >golang에서...은 무슨 뜻인가요?

golang에서...은 무슨 뜻인가요?

青灯夜游
青灯夜游원래의
2019-12-23 14:19:1510430검색

golang에서...은 무슨 뜻인가요?

... in golang은 무슨 뜻인가요?

golang에서 세 개의 점 "..."은 실제로 go에 대한 일종의 구문 설탕(설탕 코팅 구문)입니다.

Syntactic sugar는 영국의 컴퓨터 과학자인 Peter J. Landin이 발명한 용어로, 컴퓨터 언어에 추가된 특정 문법을 말합니다. 이 문법은 언어의 기능에 영향을 미치지 않습니다. , 그러나 프로그래머가 사용하는 것이 더 편리합니다. 일반적으로, 구문 설탕을 사용하면 프로그램의 가독성이 높아져 프로그램 코드 오류 가능성이 줄어듭니다.

"..." 사용법:

● 첫 번째 사용법은 함수에 여러 변수 매개변수가 있을 때 주로 사용됩니다. 이는 가변 매개변수로 표현되며 동일한 유형의 매개변수를 원하는 만큼 수용할 수 있습니다.

●두 번째 사용법은 슬라이스를 쪼개서 옮길 수 있다는 것입니다.

다음은 예입니다.

func test1(args ...string) { //可以接受任意个string参数
    for _, v:= range args{
        fmt.Println(v)
    }
}
func main(){
var strss= []string{
        "qwr",
        "234",
        "yui",
        "cvbc",
    }
    test1(strss...) //切片被打散传入
}

결과:

qwr
234
yui
cvbc

strss 슬라이스 내부의 요소 수는 임의의 숫자일 수 있으며 test1 함수는 이를 허용할 수 있습니다.

두 번째 예:

    var strss= []string{
        "qwr",
        "234",
        "yui",
    }
    var strss2= []string{
        "qqq",
        "aaa",
        "zzz",
        "zzz",
    }
strss=append(strss,strss2...) //strss2的元素被打散一个个append进strss
fmt.Println(strss)

결과:

[qwr 234 yui qqq aaa zzz zzz]

"..."이 없으면 위 상황에서 '...'을 사용하면 코드의 양이 확실히 늘어나는 느낌이 들지 않나요? 훨씬 더 간단하죠?

추천 학습: 비디오 튜토리얼로 이동

위 내용은 golang에서...은 무슨 뜻인가요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.