prefer_is_empty
Use isEmpty
for Iterable
s and Map
s.
此规则自 Dart 2.0 版本起可用。
_规则集:core , recommended , flutter _
此规则提供 快速修复 。
详情
#DON'T use length
to see if a collection is empty.
The Iterable
contract does not require that a collection know its length or be able to provide it in constant time. Calling length
just to see if the collection contains anything can be painfully slow.
Instead, there are faster and more readable getters: isEmpty
and isNotEmpty
. Use the one that doesn't require you to negate the result.
BAD:
dart
if (lunchBox.length == 0) return 'so hungry...';
if (words.length != 0) return words.join(' ');
GOOD:
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。页面最后更新于 2025-02-05。 查看源代码 或 报告问题.