在LINQ的帮助下,我需要根据条件从列表中获取项目.为此,它应该仅考虑来自(provided index - 3)提供索引(动态)的项目.
例如,列表包含项目{1,3,5,7,9,11,13}.如果提供的索引是4,则它应该考虑从索引2开始到索引4结束的总共三个索引.在这三个项目中,应该用条件过滤它们 - 比如,项目应该大于5.
结果应该是 - {7,9}
我试过的是,这是错的,我被困住了:
list.Select(item => list.Select(index => item[index - 3] && item > 5).ToList());
Run Code Online (Sandbox Code Playgroud)
Jon*_*eet 17
var query = list.Skip(index - 3) // Start at appropriate index
.Take(3) // Only consider the next three values
.Where(x => x > 5); // Filter appropriately
Run Code Online (Sandbox Code Playgroud)
个人似乎有点奇怪,我认为该指数将是结束点,而不是开始点,请注意.您可能想看看其他代码是否会从更改它中获益.
| 归档时间: |
|
| 查看次数: |
3826 次 |
| 最近记录: |