constant_pattern_never_matches_value_type
匹配的值型別 '{0}' 永遠不可能等於型別為 '{1}' 的此常量。
描述
#當常量模式永遠無法匹配與其進行測試的值時,分析器會產生此診斷資訊,因為已知常量的型別與值的型別永遠不匹配。
示例
#以下程式碼會產生此診斷資訊,因為常量模式 (true) 的型別是 bool,而要匹配的值 (x) 的型別是 int,布林值永遠不能匹配整數
dart
void f(int x) {
if (x case true) {}
}常見修復方法
#如果值的型別正確,則重寫模式以使其相容
dart
void f(int x) {
if (x case 3) {}
}如果常量的型別正確,則重寫值以使其相容
dart
void f(bool x) {
if (x case true) {}
}