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

在VB.NET中如何从Object转换为Integer?

发布时间:2020-12-17 00:27:18 所属栏目:大数据 来源:网络整理
导读:在VB.NET中如何从Object转换为整数? 当我做: Dim intMyInteger as Integer = TryCast(MyObject,Integer) 它说: TryCast operand must be reference type,but Integer is a value type. TryCast与C#的操作符相当.它是一个“安全转换”运算符,如果转换失败,
在VB.NET中如何从Object转换为整数?

当我做:

Dim intMyInteger as Integer = TryCast(MyObject,Integer)

它说:

TryCast operand must be reference type,but Integer is a value type.

TryCast与C#的操作符相当.它是一个“安全转换”运算符,如果转换失败,则不会抛出异常.而是返回Nothing(C#中为null).问题是,您不能将Nothing(null)(引用类型)分配给Integer(值类型).没有像Integer null / Nothing这样的东西.

相反,您可以使用TypeOf和Is:

If TypeOf MyObject Is Integer Then
    intMyInteger = DirectCast(MyObject,Integer)
Else
    intMyInteger = 0
End If

这将测试查看MyObject的运行时类型是否为整数.详见MSDN documentation on the TypeOf operator.

你也可以这样写:

Dim myInt As Integer = If(TypeOf myObj Is Integer,DirectCast(myObj,Integer),0)

此外,如果具有默认值(如0)的整数不合适,则可以考虑Nullable(Of Integer)类型.

(编辑:李大同)

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

    推荐文章
      热点阅读