我正试图理解在Dart中开关的工作原理。我有非常简单的代码:
methodname(num radians) {
switch (radians) {
case 0:
// do something
break;
case PI:
// do something else
break;
}
}
很不幸,这种方法不起作用。如果保留原样会出现错误:case表达式必须具有相同的类型(我认为类型是num,但编辑器不是)。 如果我将0更改为0.0,则会显示:switch类型表达式double无法覆盖==运算符 - 我不知道这是什么意思!
那么怎么做才能使用switch语句呢?我可能可以把它转换成if/else,但我想知道如何使switch语句工作以及为什么一开始它不能正常工作。
我正在运行最新稳定版本的DartEditor。