当前位置: 首页 > 编程语言 > C#

Convert和Parse有什么区别?分享

时间:2023-04-10 20:33:44 C#

Convert和Parse有什么区别?我可以编写以下代码将对象转换为整数。Convert.ToInt32(myObject);但我也可以写Int.Parse(myObject.ToString());提前致谢。是的,Int32.parse(myObject.ToString());是绕道而行,这通常会起作用,但这是不必要的,它可能会失败或给出不同的结果。通常,Convert.ToInt32(myObject);但这取决于您要转换的数据类型。如果myObject='1';你想要1还是49?如果我的对象=假;,你想要0还是异常?等等,这就是Convert.ToInt32方法源代码的样子publicstaticintToInt32(objectvalue){returnvalue==null?0:((IConvertible)value).ToInt32(null);只要您的对象实现了IConvertible接口,就应该调用此方法。根据文档,这将取决于对象以及它是否实现了IConvertible接口。有许多原因使这些方法不同。值得注意的是,如果字符串表示形式不表示相应的整数值(例如,“{Value=123}”)或者对象不是IConvertible。我会选择使用Convert.ToInt32(),因为转换是由类型定义的,而不依赖于将来可能会更改的某些可观察属性。据我所知,Convert和Parse在许多方面有所不同:Convert意味着将对象从其原始类型转换为另一种类型(如果可能)。但是这两个对象在它们自己的上下文中是相同的,例如“32”是32的字符串版本(作为整数)。在某些语言VisualBasic中,这种转换可以隐式发生。解析意味着获取输入(通常为字符串形式)并将其转换为可能完全不同的对象。以日期为例:我们可以解析“July20,2010”,这是一个日期字符串。这意味着我们必须将提供的字符串转换为日期对象,日期为20,月份为7,年份为2010。显然这个任务不是一个简单的任务,应该有一个解析字符串的逻辑。以上就是C#学习教程:Convert和Parse有什么区别?如果所有分享的内容对你有用,需要进一步了解C#学习教程,希望大家多多关注。本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处: