unnecessary_parenthesis
不必要的括号可以被移除。
详情
#避免在不需要时使用括号。
差
dart
a = (b);
优
dart
a = b;
如果括号不改变代码的含义并且不提高代码的可读性,则认为是不必要的。其目的不是强制所有开发者记住表达式优先级表,这就是包含第二个条件的原因。满足此条件的示例包括
- 级联表达式 - 有时级联表达式的目标不清楚,尤其是在赋值或嵌套级联的情况下。例如,表达式
a.b = (c..d)
。 - 标记之间带有空格的表达式 - 看到诸如
!await foo
的表达式可能看起来很奇怪,它是有效的并且等同于!(await foo)
。 - 逻辑表达式 - 括号可以提高由优先级定义的隐式分组的可读性。例如,表达式
(a && b) || c && d
。
启用
#要启用 unnecessary_parenthesis
规则,请在你的 analysis_options.yaml
文件中 linter > rules 下添加 unnecessary_parenthesis
analysis_options.yaml
yaml
linter:
rules:
- unnecessary_parenthesis
如果你使用 YAML 映射语法配置 linter 规则,请在 linter > rules 下添加 unnecessary_parenthesis: true
analysis_options.yaml
yaml
linter:
rules:
unnecessary_parenthesis: true