Linq扩展,代码赢得';t返回偶数值c#
我有一个关于lambda表达式用法的问题 教科书中有一个简短的作业,其中给出了整数序列Linq扩展,代码赢得';t返回偶数值c#,c#,lambda,linq-to-objects,C#,Lambda,Linq To Objects,我有一个关于lambda表达式用法的问题 教科书中有一个简短的作业,其中给出了整数序列0,2,4,8,7,10,3,2,从第三项开始,只能使用Skip()和TakeWhile()返回整数值。我认为我得到了正确的答案,但只返回了4,8,因此我偷偷地看了一眼解决方案,我的答案几乎是一样的 你们能帮帮我吗 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.
0,2,4,8,7,10,3,2
,从第三项开始,只能使用Skip()
和TakeWhile()
返回整数值。我认为我得到了正确的答案,但只返回了4,8
,因此我偷偷地看了一眼解决方案,我的答案几乎是一样的
你们能帮帮我吗
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace SkipTake
{
class Program
{
static void Main(string[] args)
{
int[] sequence= new int[] { 0, 2, 4, 8, 7, 10 , 3, 2 };
var select = sequence.Skip(2).TakeWhile(n => n % 2 ==0 );
foreach (var item in select)
Console.WriteLine(item);
}
}
}
TakeWhile
将在7点停止。使用Where子句
var select = sequence.Skip(2).Where(n => n % 2 ==0 );
处理项目“7”时,您的查询将停止,这是TakeWhile命令的行为方式。您完全正确!一旦谓词返回
false
,就到此为止。我应该读得更准确些>。