[英]Flutter - Count List with bool
在 Flutter 中,我创建了一个带有布尔值的列表。
List<bool> name = [false, false, false]
单击切换按钮时,值会更改为 true。
如何计算重新加载页面时的值?
我的尝试是在 initState 中计算列表是否包含 true。
value = name.contains(true).length
但它总是说没有为 class 'bool' 定义长度。
如何在重新加载页面时计算它?
提前致谢!
使用where
而不是contains
value = name.where((item) => item == false).length
bool Iterable.contains(Object element) 如果集合包含等于 [element] 的元素,则返回 true。
此操作将检查每个元素是否等于 [element],除非它有更有效的方法来查找等于 [element] 的元素。
用于确定 [element] 是否等于可迭代元素的相等性默认为元素的 [Object.==]。
某些类型的可迭代对象可能对其元素使用不同的相等性。 例如,一个 [Set] 可能有一个自定义的相等性(见 [Set.identity]),它所包含的使用。 同样,[Map.keys] 调用返回的 Iterable 应该使用 Map 用于键的相同等式。
- 来自 Dart 文档
TLDR: contains
返回布尔值,指示列表是否“包含”一个项目。
老方法但易于理解... FOR :
List<bool> name = [false, false, false] int count = 0; for(int i=0; i<name.length; i++) { if (arrValue.elementAt(i) == true) { j++; } } print(count); //to count true
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.