这些都是平等的吗?在什么情况下我应该互相选择?

  • var.ToString()
  • CStr(var)
  • CType(var,String)
  • DirectCast(var,String)


  • 编辑:来自 NotMyself 的建议...
  • TryCast(var,String)
  • 最佳答案

    这些都略有不同,并且通常具有可接受的用法。

  • var. ToString ()将为您提供对象的字符串表示形式,无论它是什么类型。如果var还不是字符串,请使用此选项。
  • CStr (var)是VB字符串强制转换运算符。我不是VB人士,所以我建议避免使用它,但这并不会真正伤害任何人。我认为它基本上与CType相同。
  • CType (var, String)将使用提供的任何转换运算符将给定类型转换为字符串。
  • DirectCast (var, String)用于将对象上载为字符串。如果您知道对象变量实际上是字符串,请使用它。这与C#中的(string)var相同。
  • TryCast (如@ NotMyself所述)类似于DirectCast,但是如果变量不能转换为字符串,而不是抛出异常,它将返回Nothing。这与C#中的var as string相同。 MSDN上的TryCast页面也有很好的比较。
  • 关于.net - 我应该如何在VB.NET中进行转换?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40764/

    10-11 22:53
    查看更多