Linq To Object查询问题

我的问题:http://topic.csdn.net/u/20110430/23/9ccd7f75-4d4b-49b1-9a76-f8c985b607dd.html?60564

===================================================================

public static void Linq5()
  {
  string[] digits = { "zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine" };

  var shortDigits = digits.Where((digit, index) => digit.Length < index);

  Console.WriteLine("Short digits:");
  foreach (var d in shortDigits)
  {
  Console.WriteLine("The word {0} is shorter than its value.", d);
  }
  }

相信各位对这个linq都很熟悉,我现在突然搞不明白了:)
其中where条件中有一个digit,我理解为是digits中的一个值(不知道对不对)l
那么这个index(理论上应该是当前位置)

可我就是弄不明白了这些参数是从那里来的,呵呵,钻牛角尖里去了,请各位高手帮忙解释下

=====================================================================

发完贴看没人理我,呵呵,估计都过五一去玩了,还是自力更生吧。

找了半天没找到个结果,在where语句停下时眇了一眼提示,发现方法是重载的,点到下一个一看,明白了:)

还是自已的基础知识不够扎实啊,下面的微软的具体解释:

Enumerable.Where<TSource> 方法 (IEnumerable<TSource>, Func<TSource, Int32, Boolean>)

public static IEnumerable<TSource> Where<TSource>(
	this IEnumerable<TSource> source,
	Func<TSource, int, bool> predicate
)

类型参数
TSource

source 中的元素的类型。

参数
source
类型: System.Collections.Generic.IEnumerable< TSource>
要筛选的 IEnumerable<T>
predicate
类型: System.Func< TSource, Int32, Boolean>
用于测试每个源元素是否满足条件的函数;该函数的第二个参数表示源元素的索引。
返回值
类型: System.Collections.Generic.IEnumerable< TSource>
一个 IEnumerable<T>,包含输入序列中满足条件的元素。


各参数的产生:“类型:System.Func<TSource, Int32, Boolean>用于测试每个源元素是否满足条件的函数;该函数的第二个参数表示源元素的索引。”,世界安静了!

 

总结:微软希望使我们减少编程的复杂度,但要记下来的东西却增加了:)

 

越来越喜欢这个狂奔中的小肥猫了,再专门贴一个

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值