if或带有等于小数的变量的语句

时间:2014-11-13 15:29:54

标签: c# if-statement

我有一个像这样的if语句

decimal var1, var2;
if(var1 == 0.00 || var2 == 0.00)
{
  ...
} 

编译器显示错误:

  

运算符'=='无法应用于'decimal''double'类型的操作数

我也试过

If(var1 = 0.00 || var2 = 0.00){
  //this
}

编译器显示错误:

  

运营商'||'无法应用于'decimal''double'

类型的操作数

我做的第三件事就是让0.00成为像"0.00"这样的字符串。在之前的两种方法中,只是为了看看它是否会做出不同的事情。

1 个答案:

答案 0 :(得分:8)

0.00被视为double。您无法直接使用==运算符使用double和decimal。您需要将值强制转换为decimal或使用m文字来使编译器处理为十进制:

if(var1 == 0.00m || var2 == 0.00m)