我正在尝试编写一个除法方法,它接受 2 个参数。
public static decimal Divide(decimal divisor, decimal dividend)
{
return dividend / divisor;
}
现在,如果除数为 0,我们得到不能被零除的错误,这没关系。
我想要做的是检查除数是否为 0,如果是,则将其转换为 1。有没有办法在我的方法中没有很多 if 语句的情况下做到这一点?我认为很多 if() 会造成困惑。我知道数学上不应该这样做,但我有其他功能。
例如:
if(divisor == 0)
{
divisor = 1;
}
return dividend / divisor;
可以不用
if()
语句吗? 最佳答案
您可以执行这样的条件 if 语句。这与VB.net中的IIF相同
return dividend / ((divisor == 0) ? 1 : divisor);
确保你用 () 包裹你的后半部分,否则你会得到一个除法错误。
关于c# - 十进制值检查是否为零,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/916224/