literal_only_boolean_expressions
僅由字面值組成的布林運算式。
詳細資訊
#請勿測試僅由字面值組成的條件,因為可以在編譯時期推斷值。
使用永遠為 FALSE 的條件的條件陳述式,會導致程式碼區塊無法運作。如果條件永遠評估為 true
,則條件陳述式是完全多餘的,並且會降低程式碼的可讀性。程式碼很可能與程式設計師的意圖不符。應移除條件,或應更新條件,使其不會永遠評估為 true
或 false
。
不良範例
dart
void bad() {
if (true) {} // LINT
}
不良範例
dart
void bad() {
if (true && 1 != 0) {} // LINT
}
不良範例
dart
void bad() {
if (1 != 0 && true) {} // LINT
}
不良範例
dart
void bad() {
if (1 < 0 && true) {} // LINT
}
不良範例
dart
void bad() {
if (true && false) {} // LINT
}
不良範例
dart
void bad() {
if (1 != 0) {} // LINT
}
不良範例
dart
void bad() {
if (true && 1 != 0 || 3 < 4) {} // LINT
}
不良範例
dart
void bad() {
if (1 != 0 || 3 < 4 && true) {} // LINT
}
注意: 常見的 while (true) { }
慣用語是例外,它通常比等效的 for (;;)
更受偏好。
良好範例
dart
void good() {
while (true) {
// Do stuff.
}
}
啟用
#若要啟用 literal_only_boolean_expressions
規則,請在您的 analysis_options.yaml
檔案中的 linter > rules 下新增 literal_only_boolean_expressions
analysis_options.yaml
yaml
linter:
rules:
- literal_only_boolean_expressions
如果您改為使用 YAML 對應語法來配置 linter 規則,請在 linter > rules 下新增 literal_only_boolean_expressions: true
analysis_options.yaml
yaml
linter:
rules:
literal_only_boolean_expressions: true
除非另有說明,否則本網站上的文件反映的是 Dart 3.7.1 版本。頁面上次更新於 2025-03-07。 檢視原始碼 或回報問題。