过滤器列表<>对象,而不使用C#2.0中的foreach循环

前端之家收集整理的这篇文章主要介绍了过滤器列表<>对象,而不使用C#2.0中的foreach循环前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我们如何在List>中过滤对象在C#中?

解决方法

假设我们有一个列表< string>并且您只想要字符串的长度大于5的项目.

下面的代码将返回一个列表< string>结果:

List<string> myList = new List<string>();
myList.Add("hello");
myList.Add("world!");
myList.Add("one");
myList.Add("large!!");
List<string> resultList = myList.FindAll(delegate(string s) { return s.Length > 5; });

resultList将包含’world!’和“大!!”.
此示例使用anonymous method.它也可以写为:

List<string> myList = new List<string>();
// ..
List<string> resultList = myList.FindAll(OnlyLargerThanFive);

//..

private static bool OnlyLargerThanFive(string s)
{
  return s.Length > 5;
}

上述代表OnlyLargerThanFive也被称为Predicate.

猜你在找的C#相关文章