title: Lambda expressions: index of an element in the array
body: <pre><code>int[] numbers = { 5, 4, 1, 3, 9, 8, 6, 7, 2, 0 };
  int oddNumbers = numbers.Count(n =&gt; n % 2 == 1);
  var firstNumbersLessThan6 = numbers.TakeWhile(n =&gt; n &lt; 6);
  var firstSmallNumbers = numbers.TakeWhile((n, index) =&gt; n &gt;= index);
  </code></pre>
  
  <p>These are C# code taken from <a href="http://msdn.microsoft.com/en-us/library/bb397687.aspx" rel="nofollow">http://msdn.microsoft.com/en-us/library/bb397687.aspx</a></p>
  
  <p>I understand the first two lambda expressions just fine by considering n as an element of the array "numbers".</p>
  
  <p>However the third lambda expression is really confusing with "index". Is (n,index) one of the lambda parameters well established for arrays? Is this a convention? </p>