跳到主要内容

non_bool_negation_expression

取反操作数的静态类型必须是 'bool'。

描述

#

当一元取反运算符 (!) 的操作数类型不是 bool 时,分析器会产生此诊断。

示例

#

以下代码会产生此诊断,因为 x 的类型是 int,而它必须是 bool

dart
int x = 0;
bool y = !x;

常见修复方法

#

将操作数替换为类型为 bool 的表达式

dart
int x = 0;
bool y = !(x > 0);