我是学习C#(和任何编程语言)的初学者 我正在尝试使用switch语句来替代if else。
以下是工作中的if else语句:
private void RunScript(int a, int b, ref object A)
{
if (a < b)
{
Print("a is smaller than b");
Print("b is bigger than a");
}
else if (a > b)
{
Print("a is bigger than b");
Print("b is smaller than a");
}
else
{
Print("a equals b");
}
这是我正在尝试进行的开关操作。
private void RunScript(double a, double b, ref object A)
{
double whichIsBigger = a - b;
//below is the 58th line
switch (whichIsBigger)
{
case whichIsBigger < 0:
Print("a is bigger than b");
break;
case whichIsBigger > 0:
Print("a is smaller than b");
break;
default:
Print("a equals b");
break;
}
它给了我这个错误 (CS0151): 一个开关表达式或情况标签必须是布尔、字符、字符串、整数、枚举或相应的可空类型 (第58行)
顺便说一下,我正在尝试在犀牛3D上使用犀牛公共库。
而且,我一直在努力寻找一个学习C#的网站或论坛,可以在那里提出这样的问题。我最终来到了这里。我认为这种问题非常基础,但我找不到一个可以解答这个问题的资源。我已经阅读了几篇帖子,也找不到类似的问题。
如果有任何可以像聊天室一样快速回答我的问题的网站,请告诉我。