这些都是平等的吗?在什么情况下我应该互相选择?
编辑:来自 NotMyself 的建议...
最佳答案
这些都略有不同,并且通常具有可接受的用法。
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/