Vb.net 测试单个值是否等于零的正确方法
以下代码行对Resharper发出警告:“使用相等运算符比较浮点数。”。舍入值时可能会丢失精度。”Vb.net 测试单个值是否等于零的正确方法,vb.net,resharper,Vb.net,Resharper,以下代码行对Resharper发出警告:“使用相等运算符比较浮点数。”。舍入值时可能会丢失精度。” Dim samples() As Single If samples(i) = Nothing Then samples(i) = _mPreviousSamples(i) End If 检查值是否存在的最佳方法是什么 检查值是否存在的最佳方法是什么 我认为您对于诸如Single之类的值类型有错误的概念“Nothing”。对于值类型,Nothing更正确地解释为该类型的默认值:对于单个
Dim samples() As Single
If samples(i) = Nothing Then
samples(i) = _mPreviousSamples(i)
End If
检查值是否存在的最佳方法是什么
检查值是否存在的最佳方法是什么
我认为您对于诸如Single之类的值类型有错误的概念“Nothing
”。对于值类型,Nothing
更正确地解释为该类型的默认值:对于单个值,为0.0
如果您想知道某个值是否与某个值类型一起存在,则需要首先初始化该值类型以保存在此上下文中不可能存在的值。对于诸如Single之类的基本类型,什么都不好。对于Single,请尝试使用,并使用检查值
检查值是否存在的最佳方法是什么
我认为您对于诸如Single之类的值类型有错误的概念“Nothing
”。对于值类型,Nothing
更正确地解释为该类型的默认值:对于单个值,为0.0
如果您想知道某个值是否与某个值类型一起存在,则需要首先初始化该值类型以保存在此上下文中不可能存在的值。对于诸如Single之类的基本类型,什么都不好。在Single的情况下,尝试使用,并使用检查值我不太了解VB.NET,但在C中,我会做一些类似于float的事情?样本=空代码>
你能把它声明为一个像Dim s as System.nullable(Of Single)=Nothing
一样的可空值吗?我对VB.NET不是很了解,但在C中,我会做一些类似于float的事情?样本=空代码>
Dim samples As System.Nullable(Of Single) = Nothing
If samples.HasValue Then
Console.WriteLine(samples.Value)
Else
Console.WriteLine("samples is Nothing")
End If
你能把它声明为一个可以为null的系统吗
Dim samples As System.Nullable(Of Single) = Nothing
If samples.HasValue Then
Console.WriteLine(samples.Value)
Else
Console.WriteLine("samples is Nothing")
End If
编辑:精度:
在大多数情况下,您可以像使用单曲一样使用可空(Of Single)
。在适当的情况下,VB会自动将其转换为单个。如果没有,只需使用上例中的值
属性即可。你也可以用问号写Single?
,而不是Nullable(指Single)
。除了测试samples.HasValue
属性,还可以测试samples is not Nothing
Dim samples As Single? = Nothing
If samples Is Nothing Then
Console.WriteLine("samples is Nothing")
Else
Console.WriteLine(samples)
End If
编辑:精度:
在大多数情况下,您可以像使用单曲一样使用可空(Of Single)
。在适当的情况下,VB会自动将其转换为单个。如果没有,只需使用上例中的值
属性即可。你也可以用问号写Single?
,而不是Nullable(指Single)
。除了测试samples.HasValue
属性,还可以测试samples is not Nothing
Dim samples As Single? = Nothing
If samples Is Nothing Then
Console.WriteLine("samples is Nothing")
Else
Console.WriteLine(samples)
End If
可能您应该查找类似于double.IsNaN(…)
的内容可能您应该查找类似于double.IsNaN(…)