111,120
社区成员
发帖
与我相关
我的任务
分享
void Test()
{
IList<String> strlist = new List<String>();
strlist.Add("123");
strlist.Add("456");
/// 下面两条语句,如何才能转换
IList<Object> objlist = strlist;
IList list = strlist;
}
IList <string> x = new List<string>();
x.Add("b");
x.Add("a");
IList<object> y = ((IEnumerable<object>)x).ToList();static void Main(string[] args)
{
List<b> list = new List<b>();
List<a> listofa = list.Select(item => (a)item).ToList();
Console.ReadKey();
}
class a { }
class b : a { }[/quote]
你的这个方法和我自己写的方法类似,就是创建了一个list的副本。
我也差了一些资料,说IList<String>和IList<Object>没有关系了,虽然String是从Object派生的。static void Main(string[] args)
{
List<b> list = new List<b>();
List<a> listofa = list.Select(item => (a)item).ToList();
Console.ReadKey();
}
class a { }
class b : a { }
IList<Object> objlist = strlist.Select(item=>(object)item).ToList();
我试了试可以用。
IList<String> strlist = new List<String>();
strlist.Add("123");
strlist.Add("456");
/// 下面两条语句,如何才能转换
IList<Object> objlist = strlist.Cast<object>().ToList();
IList list = strlist.ToList();
IList<String> strlist = new List<String>();
strlist.Add("123");
strlist.Add("456");
/// 转换
IList<object> objlist = strlist.OfType<object>().ToList();
public class IListConvert<T> where T : class
{
public static IList Convert(IList<T> list)
{
IList l2 = new ArrayList(list.Count);
foreach (T t in list)
{
l2.Add(t);
}
return l2;
}
public static IList<T> Convert(IList list)
{
IList<T> l2 = new List<T>(list.Count);
foreach (Object o in list)
{
T t = o as T;
if (t != null)
{
l2.Add(t);
}
}
return l2;
}
}