昨晚我梦见以下事情是不可能的。但在同一个梦里,来自 SO 的人却告诉了我不同的说法。因此我想知道是否可以转换System.Array为List
System.Array
List
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
给自己省点痛…
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 });