C# 所有数学运算都以整数形式返回?

C# 所有数学运算都以整数形式返回?,c#,types,casting,int,primitive-types,C#,Types,Casting,Int,Primitive Types,可能重复: 我有一个从(-1024,-1024)到(10241024)的网格,所以我不需要一个int提供的所有值,但是我注意到我的所有算法都返回为int,我需要用(short)对它们进行类型转换。有人能解释为什么所有的数学运算都返回int吗?既然数学运算返回int,那么解析尽可能短是否更有效 short yCoordinate = (short)(short.Parse(RtData[1][1]) - 1); 返回一个int,因为大多数数学运算需要大于short所能包含的数字。BCL是供许多

可能重复:

我有一个从(-1024,-1024)到(10241024)的网格,所以我不需要一个int提供的所有值,但是我注意到我的所有算法都返回为int,我需要用(short)对它们进行类型转换。有人能解释为什么所有的数学运算都返回int吗?既然数学运算返回int,那么解析尽可能短是否更有效

short yCoordinate = (short)(short.Parse(RtData[1][1]) - 1);

返回一个int,因为大多数数学运算需要大于short所能包含的数字。BCL是供许多程序员使用的,创作者必须在可读性、可用性和性能之间进行平衡,以创建通常有用的类

由于方法签名没有考虑返回类型,所以他们必须决定对于这些函数来说,什么是最有用的返回类型(short、int、long等)。他们认为int是最好的