我有一个接受varargs的函数。
func MyFunc(strs ...string) MyFunc(entry1, entry2, entry3)
我的用例是基于某些条件传递其中一个条目。有没有可能像下面这样有类似效果的东西(这样我就不需要在两个里面都有一个if-else调用MyFunc):
MyFunc(entry1, if(condition)entry2, entry3)
6vl6ewon1#
只需将参数准备为切片:
myArgs := []string{"entry1"} if (condition) { myArgs = append(myArgs, "entry2") } myArgs = append(myArgs, "entry3")
然后使用你的slice调用variadic函数:
MyFunc(myArgs...)
1条答案
按热度按时间6vl6ewon1#
只需将参数准备为切片:
然后使用你的slice调用variadic函数: