prefer_is_empty
因為長度總是大於或等於 0,所以此比較始終為 'false'。
因為長度總是大於或等於 0,所以此比較始終為 'true'。
使用 'isEmpty' 而不是 'length' 來測試集合是否為空。
使用 'isNotEmpty' 而不是 'length' 來測試集合是否為空。
描述
#當呼叫 Iterable.length 或 Map.length 的結果與零 (0) 進行相等性比較時,分析器會產生此診斷。
示例
#以下程式碼會產生此診斷,因為對呼叫 length 的結果進行了零相等性檢查
dart
int f(Iterable<int> p) => p.length == 0 ? 0 : p.first;常見修復方法
#將 length 的使用替換為 isEmpty 或 isNotEmpty 的使用
dart
void f(Iterable<int> p) => p.isEmpty ? 0 : p.first;