switch_case_completes_normally
该“案例”不应正常完成。
描述
#当 switch
语句中某个 case
标签后的语句可能会落入(fall through)下一个 case
或 default
标签时,分析器会产生此诊断信息。
示例
#以下代码会产生此诊断信息,因为值为零 (0
) 的 case
标签落入(falls through)了 default
语句
dart
void f(int a) {
switch (a) {
case 0:
print(0);
default:
return;
}
}
常见修复方法
#改变控制流,使 case
不会落入。有几种方法可以做到这一点,包括在当前语句列表的末尾添加以下之一
- 一个
return
语句, - 一个
throw
表达式, - 一个
break
语句, - 一个
continue
,或 - 调用返回类型为
Never
的函数或方法。