当前位置:  开发笔记 > 编程语言 > 正文

LINQ查询返回List <bool>

如何解决《LINQ查询返回List<bool>》经验,为你挑选了1个好方法。

我有一个LINQ查询,我需要返回该列表,true或者false条件是否满足该索引处的特定项目.

dataList = {100, 40, 10, 200};
var res = dataList.Select((item, index) => new { item, index }).Any(x => x.item > 50).ToList();

上述方法的问题是我无法在最后添加ToList().没有它它只返回真或假,而我想要一个bool列表.

预期输出 - {true,false,false,true}

Steve.. 5

您的方法中有许多不需要的代码.
只需测试Select枚举的序列中的当前元素是否大于50 ,就不需要使用Index的重载.

如果你只想要一个与你的整数数组匹配的布尔列表那么它就是

int[] dataList = { 100, 40, 10, 200};
var res = dataList.Select(item => item > 50).ToList();

foreach(bool b in res)
   Console.WriteLine(b);

最后,对Any的调用是错误的.当列表中的元素满足条件,然后STOPS枚举时,它返回true或false.它不会返回可以使用ToList()实现的IEnumerable.



1> Steve..:

您的方法中有许多不需要的代码.
只需测试Select枚举的序列中的当前元素是否大于50 ,就不需要使用Index的重载.

如果你只想要一个与你的整数数组匹配的布尔列表那么它就是

int[] dataList = { 100, 40, 10, 200};
var res = dataList.Select(item => item > 50).ToList();

foreach(bool b in res)
   Console.WriteLine(b);

最后,对Any的调用是错误的.当列表中的元素满足条件,然后STOPS枚举时,它返回true或false.它不会返回可以使用ToList()实现的IEnumerable.

推荐阅读
360691894_8a5c48
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有