Enumerable.Where<TSource> 方法:http://msdn.microsoft.com/zh-cn/library/bb534803.aspx
MSDN中显示的是,这个方法有两个参数啊,那怎么:
string[] strs ={ "Suyama", "Fuller", "Callahan", "Michael", "Janet" }; var result1 = strs.Where(p => p.Length>5); where方法后面怎么只有一个参数呢,只有一个λ表达式呢
MSDN中显示的是,这个方法有两个参数啊,那怎么:
string[] strs ={ "Suyama", "Fuller", "Callahan", "Michael", "Janet" }; var result1 = strs.Where(p => p.Length>5); where方法后面怎么只有一个参数呢,只有一个λ表达式呢
解决方案 »
- C#制作“咆哮体生成器”
- 新手求助||c#浏览器遇到的问题
- cadence二次开发
- 我想了解下怎样通过自己开发的系统发送短信到别人的手机上
- 删除Tree型数据
- 请问有关 vs2005 winform开发的实例 哪里有?
- 很多人~~~~想解决的~~~~~~C#输入文字问题~~~
- SharpDevelop 1.0.3.1768 VS2003版本的完整源代码及可执行文件下载
- winform用选中datagrid的行后打开新页面,在新页面修改数据后怎么刷新父页面中的datagrid?大家帮助啊
- 简单的CMD问题【100分!!!】
- 针对程序集 'SqlServerTime' 的 ALTER ASSEMBLY 失败,因为程序集 'SqlServerTest' 未获授权(PERMISSION_
- TextBox的限制
这里的参数类型是string,返回类型是bool.
var result1 = strs.Where(p => p.Length>5);
写成通常的调用方式就是:
var result1 = Where(strs, p => p.Length>5); 第一种连缀的写法还可以继续调用其他的扩展方法,可读性也更好
public static IEnumerable<TSource> Where<TSource>(
this IEnumerable<TSource> source,
Func<TSource, bool> predicate
)是一个定义。请注意第一个参数是具有 this 属性的。当你用 strs.where(...) 的方式调用时,第一个参数就是 strs ,是隐式传入的。你去补习一下 c++ 的this概念及实现,你就明白了。