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

前端之家收集整理的这篇文章主要介绍了在VB.NET中如何从Object转换为Integer?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在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)类型.

原文链接:https://www.f2er.com/vb/255161.html

猜你在找的VB相关文章