gpt4 book ai didi

c# - 我如何计算元素直到找到好的元素?

转载 作者:行者123 更新时间:2023-11-30 14:16:06 24 4
gpt4 key购买 nike

我有一个收藏。

我只想从中投影前 N 个未删除的内容。

但是我想计算有多少元素(已删除和未删除)我一直遍历到第 N 个未删除的元素。

我该怎么做?我想使用副作用:

int i;
collectiom.Skip(Convert.ToInt32(startIndex))
.TakeWhile( x=>
{
++i != 0;
return (!x.IsDeleted)
})
.Take(N);

但是编译器拒绝了。现在我发现它并没有满足我的需求

TIA

最佳答案

这个怎么样:

var selected = collection.Select((x, i) => new {Item = x, Index = i})
.Skip(Convert.ToInt32(startIndex))
.Where(x => !x.Item.IsDeleted)
.Take(N);

结果是 N 个匿名对象的序列,其中 x.Item 是原始对象,x.Index 是它在原始集合。如果您想从 startIndex 开始计算原始集合,只需交换 SelectSkip 调用即可。

然后你可以像这样得到你想要的号码:

var numberProcessed = selected.Last().Index + 1;

关于c# - 我如何计算元素直到找到好的元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8289677/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com