collection_methods_unrelated_type
引數型別 '{0}' 與 '{1}' 不相關。
描述
#當核心庫中的某些方法使用不合適的引數型別呼叫時,分析器會生成此診斷。這些方法的引數型別不夠具體,無法透過正常的型別檢查捕獲錯誤。
檢查的引數包括:
Iterable<E>.contains方法的引數應與E相關List<E>.remove方法的引數應與E相關Map<K, V>.containsKey方法的引數應與K相關Map<K, V>.containsValue方法的引數應與V相關Map<K, V>.remove方法的引數應與K相關Map<K, V>.[]方法的引數應與K相關Queue<E>.remove方法的引數應與E相關Set<E>.lookup方法的引數應與E相關Set<E>.remove方法的引數應與E相關
示例
#以下程式碼會生成此診斷,因為 contains 方法的引數是 String 型別,它無法賦值給列表 l 的元素型別 int
dart
bool f(List<int> l) => l.contains('1');常見修復方法
#如果元素型別是正確的,則更改引數使其具有相同的型別
dart
bool f(List<int> l) => l.contains(1);如果引數型別是正確的,則更改元素型別
dart
bool f(List<String> l) => l.contains('1');