c# 能像java那样传递不定数量的参数吗?
5个回答
展开全部
支持的,例子如下:
// 下面的函数中dyncParams就是动态参数
void dynamicParams(string name, params int[] dyncParams){...}
// 使用函数
dynamicParams("a",1);
dynamicParams("a",1,2,3);
除此之外,c#还至此命名参数和可选参数,例子如下:
// 定义三个参数,其中p2和p3有默认值
void optionParams(string p1, string p2 = "p2", bool p3 = true){ ... }
// 使用函数
optionParams("p1value"); // 省略了p2和p3参数
optionParams("p1value","v2"); // 省略了p3参数
optionParams("p1value",p3:false,p2:"v2"); // 注意:参数顺序与声明不同
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以的,Console.WriteLine就是一个例子。
例如:static void WriteLine(string format,params object[] objs);
这里objs作为一个object[]对待,只是调用的时候,可以不定参数的调用。
例如:static void WriteLine(string format,params object[] objs);
这里objs作为一个object[]对待,只是调用的时候,可以不定参数的调用。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我觉得传一个object[]数组可以实现的,因为就像线程回调一样,参数不定的话系统就是用这个实现的,不过你这个函数要进行内部判断了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
void test(string a, params object[] objs)//params 必须是最后一个参数
{
……
}
调用
test("a",1,2,"sdfd",'d')
{
……
}
调用
test("a",1,2,"sdfd",'d')
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询