嗨,我正在尝试应用如果条件在两个条件之间包含&&
Convert.ToDouble(item["a"].ToString())==2.2
Convert.ToDouble(item["b"].ToString()) should be in range from 0.38 to 1.04.
我正在这样尝试
if (Convert.ToDouble(item["a"].ToString())==2.2 && NA)
NA - 不知道如何应用第 2 点中定义的范围条件。
任何帮助将不胜感激。
首先将ToDoble
的结果存储到变量中。之后检查该值是否大于0.38
和小于1.04
:
var b = Convert.ToDouble(item["b"].ToString);
if(0.38 < b && b < 1.04) ...
除此之外,我强烈建议使用Double.TryParse
,如果 inout 不是有效数字,它将返回 false。如果字符串不可转换,则Convert
-class 中的方法会引发异常。
最后:double
是一个浮点数。您的第一个条件很可能永远不会成立,因为十进制数2.2
不能表示为 2 的幂。为了说明这一点,您应该在使用浮点数时比较范围,例如:
var espilon = 0.0002;
if(Math.Abs(myValue - 2.2) < epslion)
// great, do something