小编典典

System.Array 到 List 的转换

all

昨晚我梦见以下事情是不可能的。但在同一个梦里,来自 SO 的人却告诉了我不同的说法。因此我想知道是否可以转换System.ArrayList

Array ints = Array.CreateInstance(typeof(int), 5);
ints.SetValue(10, 0);
ints.SetValue(20, 1);
ints.SetValue(10, 2);
ints.SetValue(34, 3);
ints.SetValue(113, 4);

List<int> lst = ints.OfType<int>(); // not working

阅读 71

收藏
2022-04-14

共1个答案

小编典典

给自己省点痛…

using System.Linq;

int[] ints = new [] { 10, 20, 10, 34, 113 };

List<int> lst = ints.OfType<int>().ToList(); // this isn't going to be fast.

也只能…

List<int> lst = new List<int> { 10, 20, 10, 34, 113 };

或者…

List<int> lst = new List<int>();
lst.Add(10);
lst.Add(20);
lst.Add(10);
lst.Add(34);
lst.Add(113);

或者…

List<int> lst = new List<int>(new int[] { 10, 20, 10, 34, 113 });

或者…

var lst = new List<int>();
lst.AddRange(new int[] { 10, 20, 10, 34, 113 });
2022-04-14