C# - 是否可以使用0除以返回数字,而不是抛出异常?

pkr*_*298 1 c# math error-handling divide-by-zero

我有一个包含分词的表达式,其中一些分母有时为零.但是,在这些情况下,我希望该除法产生1,而不是抛出异常.有没有直接的方法来做这个,或者我被迫做一些if语句和更改表达式的输入以获得这种期望的效果?

Chr*_*org 7

虽然我必须质疑这里的动机,但如果你需要这样做,那就做一个功能.

double SafeDiv(double num, double denom) {
   if(denom == 0) {
      return 1;
   }
   return num/denom;
}
Run Code Online (Sandbox Code Playgroud)

  • @Massimiliano Peluso:是的,据我所知5/-5正好是-1 :) (3认同)