如何在C#中将数组转换为List <object>?
如何在C#中将Array
转换为List<object>
?
List<object> list = myArray.Cast<Object>().ToList();
如果数组元素的types是引用types,则可以.Cast<object>()
因为C#4添加了接口协方差,即IEnumerable<SomeClass>
可以被视为IEnumerable<object>
。
List<object> list = myArray.ToList<object>();
使用构造函数: new List<object>(myArray)
List<object>.AddRange(object[])
应该做的伎俩。 这将避免各种无用的内存分配。 你也可以使用Linq,就像这样: object[].Cast<object>().ToList()
List <>构造函数可以接受实现IEnumerable的任何东西,因此…
object[] testArray = new object[] { "blah", "blah2" }; List<object> testList = new List<object>(testArray);
private List<object> ConvertArrayToList(object[] array) { List<object> list = new List<object>(); foreach(object obj in array) list.add(obj); return list; }
如果数组项和列表项相同
List<object> list=myArray.ToList();
所有人都说的是正确的,
int[] aArray = {1,2,3}; List<int> list = aArray.OfType<int> ().ToList();
会把一个数组变成一个列表,列表。 然而,很多评论中最大的缺点是你需要在课堂上面使用这两个使用语句
using System.Collections.Generic; using System.Linq;
我希望这有帮助!
您也可以直接使用数组初始化列表:
List<int> mylist= new List<int>(new int[]{6, 1, -5, 4, -2, -3, 9});
其他方式
List<YourClass> list = (arrayList.ToArray() as YourClass[]).ToList();
这可以让你发送一个对象:
private List<object> ConvertArrayToList(dynamic array)