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。 檢視原始碼 或 回報問題。