有很多方法可以将对象转换/转换为另一个对象,这些方法之间有什么区别,如果没有区别,为什么有这么多方法来实现一件事?这不是对语言的伤害吗?
假设对象 obj 到字符串。
obj.ToString()
obj as string
(string)obj
Convert.ToString(obj)
你在这里做不同的事情:
- obj.ToString() - 这是对
ToString()
对象的方法。该对象返回一个编程为的字符串。
- obj as string - 这是将对象转换为字符串的尝试,这可能会失败,也可能不会失败(如果失败,结果是
null
),不会抛出异常。
- (string)obj - 这是一个显式转换
obj
到类型string
,你告诉编译器obj
is a string
. If obj
不是字符串类型,您将得到强制转换异常。
- Convert.ToString(obj) - 这是对 Convert 类的显式调用,以返回以下内容的字符串表示形式
obj
.
有很多不同的方法可以获得string
从一个object
因为每一个都是不同的并且有细微的差别。是的,在许多情况下返回的字符串将是相同的,但这不能保证。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)