C# 类型转换和解析之间的区别?
解析和类型转换之间的最大区别是什么? 我尝试对字符串使用类型转换,但它给了我错误 大概是这样的:C# 类型转换和解析之间的区别?,c#,parsing,casting,C#,Parsing,Casting,解析和类型转换之间的最大区别是什么? 我尝试对字符串使用类型转换,但它给了我错误 大概是这样的: string str = "10"; int i = (int) str; 要使类型转换工作,类型需要兼容: object str = 10; int i = (int) str; 解析是不同类型之间的转换: string str = "10"; int i = int.Parse(str); 当对象共享某个继承时,强制转换工作正常。但在你的情况下 int i = (int) str; 您正
string str = "10";
int i = (int) str;
要使类型转换工作,类型需要兼容:
object str = 10;
int i = (int) str;
解析是不同类型之间的转换:
string str = "10";
int i = int.Parse(str);
当对象共享某个继承时,强制转换工作正常。但在你的情况下
int i = (int) str;
您正在处理隐式自动转换。其中编译器将自动删除/丢失.NET内置类型。要获得完整的指南,请访问此处并查找
解析适用于两个不相关的对象,但有一种方法可以将一种方式转换为另一种方式。这意味着我只能使用short、double、long等类型转换。如果要转换的类型与要转换的类型相同,则可以对任何类型使用类型转换。就解析而言,解析方法有不同的重载,允许您将字符串转换为整数、浮点、十进制……这只是一个后续问题,所以解析要好得多?这取决于您试图做什么。如果您需要将字符串转换为整数,而您没有选择权,则需要对其进行解析。
Int32.Parse(...