如何在不使用 foreach 的情况下将 ArrayList 转换为强类型通用列表?
请参阅下面的代码示例。 我需要 ArrayList 成为通用列表。 我不想使用foreach
。
ArrayList arrayList = GetArrayListOfInts();
List<int> intList = new List<int>();
//Can this foreach be condensed into one line?
foreach (int number in arrayList)
{
intList.Add(number);
}
return intList;
See the code sample below. I need the ArrayList
to be a generic List. I don't want to use foreach
.
ArrayList arrayList = GetArrayListOfInts();
List<int> intList = new List<int>();
//Can this foreach be condensed into one line?
foreach (int number in arrayList)
{
intList.Add(number);
}
return intList;
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
尝试以下方法
这只能在使用 C# 3.5 编译器时有效,因为它利用了 3.5 框架中定义的某些扩展方法。
Try the following
This will only work though using the C# 3.5 compiler because it takes advantage of certain extension methods defined in the 3.5 framework.
这是低效的(它不必要地生成中间数组),但很简洁并且可以在 .NET 2.0 上工作:
This is inefficient (it makes an intermediate array unnecessarily) but is concise and will work on .NET 2.0:
使用扩展方法怎么样?
来自 http://www.dotnetperls.com/convert-arraylist-list:
How about using an extension method?
From http://www.dotnetperls.com/convert-arraylist-list:
在 .Net 标准 2 中,使用
Cast
是更好的方法:In .Net standard 2 using
Cast<T>
is better way: