prefer_is_empty
对于 Iterable
和 Map
,使用 isEmpty
。
此规则从 Dart 2.0 开始可用。
此规则有快速修复可用。
详情
#不要使用 length
来检查集合是否为空。
Iterable
约定不要求集合知道其长度或能够在恒定时间内提供它。仅为了查看集合是否包含任何内容而调用 length
可能会非常缓慢。
相反,有更快、更易读的 getter:isEmpty
和 isNotEmpty
。使用不需要你否定结果的那一个。
错误示例
dart
if (lunchBox.length == 0) return 'so hungry...';
if (words.length != 0) return words.join(' ');
正确示例
dart
if (lunchBox.isEmpty) return 'so hungry...';
if (words.isNotEmpty) return words.join(' ');
用法
#要启用 prefer_is_empty
规则,请在 analysis_options.yaml
文件中的 linter > rules 下添加 prefer_is_empty
analysis_options.yaml
yaml
linter:
rules:
- prefer_is_empty
除非另有说明,否则本网站上的文档反映的是 Dart 3.6.0。页面上次更新于 2024-07-03。 查看源代码 或 报告问题。