c# - 将 List 传递给 params 参数

标签 c#

有没有办法将 List 作为参数传递给 params 参数?假设我有这样的方法:

void Foo(params int[] numbers)
{
    // ...
}

这样我就可以通过传递以逗号分隔的 intint 数组来调用它:

int[] numbers = new int[] { 1, 5, 3 };
Foo(numbers);
Foo(1, 5, 3);

我想知道是否有一种方法可以将 List 作为参数传递(无需将其转换为数组)。例如:

List<int> numbersList = new List<int>(numbers);
// This won't compile:
Foo(numbersList);

最佳答案

没有

遗憾的是,这就是答案。不,那里没有。必须将其转换为数组(例如使用 .ToArray())。

关于c# - 将 List 传递给 params 参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42515613/

相关文章:

c# - 如何避免此代码中的堆栈溢出异常?

c# - 当函数属于必须解析的类时,如何向 IServiceCollection 注册委托(delegate)或函数?

c# - 如何从 Silverlight 中的 HttpWebRequest.BeginGetRequestStream 中更新我的 UI

c# - 您是否缺少 using 指令或程序集引用?

c# - += 运算符与 lambda 运算符的用法

c# - asp.net 中的自定义错误页面

c# - 如何检查针对 Sql Server 数据库的 linq 查询结果是否存在数据?

c# - 如何更改 StorageFile 上的 DateCreated?

c# - 如何在第一个循环 C# 后停止 PictureBox GIF 动画?

c# - NpgsqlCommand 中的参数未正确替换