常忘記的小技巧. 把一些 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);
});