java和golang都支持多参数传入,但是还是有一些区别的;示例如下
java代码:
public static void main(String[] args) {
foreach("1", "2");
foreach(new Object[]{"3", "4"});
foreach(new String[]{"5", "6"});
}
public static void foreach(Object... entNums) {
for (Object a : entNums) {
System.out.println("#" + a);
}
}结果:
#1 #2 #3 #4 #5 #6
golang示例:
func TestRun(t *testing.T) {
foreach("1","2")
var paramsStr []string
paramsStr = append(paramsStr,"3")
paramsStr = append(paramsStr,"4")
foreach(paramsStr)
var params []interface{}
params = append(params,"5")
params = append(params,"6")
foreach(params)
foreach(params...)
}
func foreach(args ...interface{}) {
for _, a := range args {
fmt.Println("#" + gconv.String(a))
}
}结果:
=== RUN TestRun #1 #2 #["3","4"] #["5","6"] #5 #6
注:golang传入切片只有使用了...才会打散参数