常忘記的小技巧. 把一些 List class 中的某部份參數重新輸出為另一類的 List.
using System.Linq; private void test() { List<ClassA> data = new List<ClassA>(); // // assume there are data inside. :D // List<string> _allNames = data.ConvertAll<string>(delegate(ClassA obj){ return obj.name; }); List<int> _allAge = data.ConvertAll<int>(delegate(ClassA obj){ return obj.age; }); } internal class ClassA { public string name; public int age; public bool dead; }
另外基本的 Find Delegate 也筆記一下.
List<string> _oldGuys = data.Find(delegate(ClassA obj){ return (obj.age>50); });