将int.Parse()类型强制转换为long类型和使用long. parse类型有区别吗?
本文关键字:类型 long parse 有区别 转换 Parse int | 更新日期: 2023-09-27 18:19:02
我偶然发现了一些开发人员使用
的代码fooBar((long)int.Parse(someVariable));
fooBar
函数正在等待long
作为参数,并将其用于SQL查询。
与使用long.Parse(...)
有什么区别?
是的,long.Parse
将处理大于int
的数字。所以它是可取的,除非你想要一个异常,如果数字不能适合int
。
也没有必要从int
强制转换到long
,因为存在隐式强制转换。
区别在于如果someVariable
代表的值不能放入int
主要区别在于,使用int.Parse
,您几乎可以保证在int
的范围内获得一个数字。如果数字在该范围之外,int.Parse
将抛出一个OverflowException
(而long.Parse
将高兴地接受它,只要数字在long
的范围内)。
解析函数的结果是int64,但是当你使用int时。解析结果为int32