語法糖(Syntactic sugar),也譯為糖衣語法,是由英國計算機科學家彼得·約翰·蘭達(Peter J. Landin)發明的一個術語,指計算機語言中添加的某種語法,這種語法對語言的功能并沒有影響,但是更方便程序員使用。通常來說使用語法糖能夠增加程序的可讀性,從而減少程序代碼出錯的機會。
下面通過例子看下Go語法糖之‘...' 的使用,具體內容如下所示:
‘…' 其實是go的一種語法糖。
它的第一個用法主要是用于函數有多個不定參數的情況,可以接受多個不確定數量的參數。
第二個用法是slice可以被打散進行傳遞。
下面直接上例子:
1
2
3
4
5
6
7
8
|
func test1(args ...string) { // 可以接受任意個string參數 for _, v := range args{ fmt .Println( v ) } }func main(){var strss= []string{ "qwr" , "234" , "yui" , "cvbc" , } test1(strss...) // 切片被打散傳入 }123456789101112131415 |
結果:
qwr
234
yui
cvbc1234
其中strss切片內部的元素數量可以是任意個,test1函數都能夠接受。
第二個例子:
1
2
3
4
5
|
var strss= []string{ "qwr" , "234" , "yui" , } var strss2= []string{ "qqq" , "aaa" , "zzz" , "zzz" , } strss=append(strss,strss2...) //strss2 的元素被打散一個個append進strssfmt.Println(strss)1234567891011121314 |
結果:
[qwr 234 yui qqq aaa zzz zzz]
如果沒有'…',面對上面的情況,無疑會增加代碼量,有了'…',是不是感覺簡潔了許多
總結
以上所述是小編給大家介紹的Go語法糖之‘...' 的使用實例詳解,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對服務器之家網站的支持!
原文鏈接:https://studygolang.com/articles/15357