加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

如何在VB.Net 2010中的double中使用null值?

发布时间:2020-12-17 00:08:00 所属栏目:大数据 来源:网络整理
导读:直截了当的问题:我有一些双倍的变量.我希望能够在其中存储“空”状态,即我需要能够表示该变量不包含有效数据.我真的不想将一个布尔“有效”变量与每一个双关联,这将是丑陋的,可能是不必要的. 首先,我发现必须以不同的方式声明变量以允许检查’IsNothing’的
直截了当的问题:我有一些双倍的变量.我希望能够在其中存储“空”状态,即我需要能够表示该变量不包含有效数据.我真的不想将一个布尔“有效”变量与每一个双关联,这将是丑陋的,可能是不必要的.

首先,我发现必须以不同的方式声明变量以允许检查’IsNothing’的概念,所以我这样做:

dim someDouble as Double?

(注意问号).如果我没有这样声明,错误检查会给我一个“IsNot需要具有引用类型的操作数”消息.

声明后,将变量设置为……

someDouble = Nothing

…似乎将其设置为零,因为它永远不会运行我的if / else语句中的代码来检查someDouble IsNot Nothing …这是不好的,因为该变量可以合法地将0存储为有效数据.

我在这里错过了什么?谢谢!

编辑:我遗漏了我在类中使用属??性来获取和设置这些值.事实证明我正在做正确的事情,除了我把我的Property的类型留作Double而不是Double?所以它回流到零而不是Nothing值.但有用的信息仍然在下面的答案中!

你应该在MSDN上阅读 Nullable Structure

这将解释如何使用它

例:

Sub Main()
    Dim someDouble As Double?

    someDouble = Nothing
    If someDouble.HasValue Then
        Console.WriteLine(someDouble.ToString)
    Else
        Console.WriteLine("someDouble is nothing / null")
    End If
    Console.Read()
End Sub

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读