c#中怎么将泛型的List和ArrayList相互转化?
展开全部
ArrayList a;
List<MyClass> l;
1.自定义函数:
IEnumerable<T> CastToList(ArrayList a) {
foreach(object item in a) {
if (item is T) yield
}
}
l = CastToList(a).ToList();
或者
l = new List(CastToList(a));
或者
l.AddRange(CastToList(a));
2.3.0中的扩展方法:
ArrayList.Cast<T>();
l = a.Cast<MyClass>().ToList();
或者
l = new List(a.Cast<MyClass>());
或者
l.AddRange(a.Cast<MyClass>());
List<MyClass> l;
1.自定义函数:
IEnumerable<T> CastToList(ArrayList a) {
foreach(object item in a) {
if (item is T) yield
}
}
l = CastToList(a).ToList();
或者
l = new List(CastToList(a));
或者
l.AddRange(CastToList(a));
2.3.0中的扩展方法:
ArrayList.Cast<T>();
l = a.Cast<MyClass>().ToList();
或者
l = new List(a.Cast<MyClass>());
或者
l.AddRange(a.Cast<MyClass>());
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询