golang中的三個點 '...'的用法示例詳解
‘…' 其實是go的一種語法糖。
它的第一個用法主要是用于函數(shù)有多個不定參數(shù)的情況,可以接受多個不確定數(shù)量的參數(shù)。
第二個用法是slice可以被打散進行傳遞。
下面直接上例子:
func test1(args ...string) { //可以接受任意個string參數(shù)
for _, v:= range args{
fmt.Println(v)
}
}
func main(){
var strss= []string{
"qwr",
"234",
"yui",
"cvbc",
}
test1(strss...) //切片被打散傳入
}
結(jié)果:
qwr
234
yui
cvbc
其中strss切片內(nèi)部的元素數(shù)量可以是任意個,test1函數(shù)都能夠接受。
第二個例子:
var strss= []string{
"qwr",
"234",
"yui",
}
var strss2= []string{
"qqq",
"aaa",
"zzz",
"zzz",
}
strss=append(strss,strss2...) //strss2的元素被打散一個個append進strss
fmt.Println(strss)
結(jié)果:
[qwr 234 yui qqq aaa zzz zzz]
如果沒有'…',面對上面的情況,無疑會增加代碼量,有了'…',是不是感覺簡潔了許多
到此這篇關(guān)于golang中的三個點 '...' 的用法示例詳解的文章就介紹到這了,更多相關(guān)golang三個點用法內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
golang sync.Pool 指針數(shù)據(jù)覆蓋問題解決
本文主要介紹了使用sync.Pool時遇到指針數(shù)據(jù)覆蓋的問題,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2025-03-03
Golang中println和fmt.Println區(qū)別解析
Golang 中打印數(shù)據(jù)通常使用 fmt.Println() 方法,也可以使用內(nèi)置的 println() 方法。這兩個方法大家可能都使用過,它們的區(qū)別是什么呢?本文給大家詳細講解,感興趣的朋友跟隨小編一起看看吧2023-03-03
Go語言使用ioutil.ReadAll函數(shù)需要注意基本說明
這篇文章主要為大家介紹了Go語言使用ioutil.ReadAll函數(shù)需要注意基本說明,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-07-07
golang 如何用反射reflect操作結(jié)構(gòu)體
這篇文章主要介紹了golang 用反射reflect操作結(jié)構(gòu)體的操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-04-04

