c# - 如何在 C# 中转换 List<>

标签 c# casting type-conversion

如何转换两个列表...

我想要类似的东西

List<Obj1> list = new List<Obj1>();
list.add(new Obj1);

List<Obj2> list2 = new List<Obj2>();

list2.add((Obj1)list[0]);

最佳答案

您可能对 Enumerable 感兴趣扩展方法Cast .

IEnumerable<Obj2> enumerable = list.Cast<Obj2>();

如果需要,您可以转换为List:

var list2 = enumerable.ToList()

(这显然假设从 Obj1Obj2 的转换是有效的:Obj2 派生自 Obj1 或存在转换运算符。)

关于c# - 如何在 C# 中转换 List<>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5500291/

相关文章:

c# - 如何在 Windows Phone 8 中将 Firebase REST Streaming 与 Hammock 结合使用?

c# - 如何使用 C# XML 反序列化解析 FCPXML 文件

c++ - vector<shared_ptr<Foo>> 到 vector<shared_ptr<const Foo>> 的隐式转换

Delphi 支持 SQLite list 类型

ruby - Ruby 中的字符串转换和子字符串让我感到困惑

c# - 关于 Java 和 C# 中访问说明符的混淆

c - 赋值从整数生成指针,没有强制转换和其他问题

将子程序的地址转换为 void 指针

c# - Convert.ToInt32 只支持 4 个碱基?

c# - 从 Roslyn 中的方法符号生成方法签名的语法