c# – 将填充的列表转换为列表

c# – 将填充的列表转换为列表,第1张

概述我有一个列表< BaseClass>与其中的成员.我想将列表(及其所有成员具体)转换为List< ChildClass>类型,其中ChildClass继承BaseClass.我知道我可以通过foreach获得相同的结果: List<ChildClass> ChildClassList = new List<ChildClass>();foreach( var item in BaseClassL 我有一个列表< BaseClass>与其中的成员.我想将列表(及其所有成员具体)转换为List< ChildClass>类型,其中ChildClass继承BaseClass.我知道我可以通过foreach获得相同的结果:
List<ChildClass> ChildClassList = new List<ChildClass>();foreach( var item in BaseClassList ){    ChildClassList.Add( item as ChildClass );}

但是有没有更好的做法呢?注意 – 这是在WP7平台上完成的.

解决方法 如果您真的确定所有项目都是可浇注的,您可以执行此 *** 作:
ChildClassList = BaseClassList.Cast<ChildClass>().ToList();

如果BaseClass项不能转换为ChildClass,您当前的代码将添加null.如果这是真的你的意图,这将是相当的:

ChildClassList = BaseClassList.Select(x => x as ChildClass).ToList();

但我宁愿建议这个,包括类型检查,并将跳过不符合的项目:

ChildClassList = BaseClassList.OfType<ChildClass>().ToList();
总结

以上是内存溢出为你收集整理的c# – 将填充的列表转换为列表全部内容,希望文章能够帮你解决c# – 将填充的列表转换为列表所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1259980.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-07
下一篇 2022-06-07

发表评论

登录后才能评论

评论列表(0条)

保存