long

王朝百科·作者佚名  2009-12-06  
宽屏版  字体: |||超大  

long(C# 参考)

long 关键字表示一种整型,该类型根据下表显示的大小和范围存储值。

类型 范围 大小 .NET Framework 类型

long

-9,223,372,036,854,775,808 到 9,223,372,036,854,775,807

有符号 64 位整数

System.Int64

标识符

可如下例所示声明并初始化 long 类型的变量:

复制代码

long long1 = 4294967296;如果整数没有后缀,则其类型为以下类型中可表示其值的第一个类型:int、uint、long、ulong。在上例中,它是 long 类型,因为它超出了 uint 的范围(有关整型的存储大小,请参见整型表(C# 参考))。

还可以像下面这样,在 long 类型中使用后缀 L:

复制代码

long long2 = 4294967296L;当使用后缀 L 时,将根据整数的大小确定它的类型为 long 还是 ulong。在此例中,它是 long,因为它小于 ulong 的范围的下限。

此后缀常用于调用重载方法。以下面使用 long 和 int 参数的重载方法为例:

复制代码

public static void SampleMethod(int i) {}

public static void SampleMethod(long l) {}使用后缀 L 可保证调用正确的类型,例如:

复制代码

SampleMethod(5); // Calling the method with the int parameter

SampleMethod(5L); // Calling the method with the long parameter可在同一个表达式中同时使用 long 类型和其他数值整型,这时表达式的计算结果为 long(在关系表达式或布尔表达式中为 bool)类型。例如,下列表达式计算为 long:

复制代码

898L + 88注意

也可用小写字母“l”作后缀。但是,因为字母“l”容易与数字“1”混淆,会生成编译器警告。为清楚起见,请使用“L”。

有关兼用浮点型和整型的算术表达式的信息,请参见 float 和 double。

转换

存在从 long 到 float、double 或 decimal 的预定义隐式转换。其他情况下必须使用显式转换。例如,不使用显式类型转换时,下列语句将产生编译错误:

复制代码

int x = 8L; // Error: no implicit conversion from long to int

int x = (int)8L; // OK: explicit conversion to int存在从 sbyte、byte、short、ushort、int、uint 或 char 到 long 的预定义隐式转换。

还请注意,不存在从浮点型到 long 类型的隐式转换。例如,除非使用显式强制转换,否则以下语句将生成一个编译器错误:

复制代码

long x = 3.0; // Error: no implicit conversion from double

long y = (long)3.0; // OK: explicit conversion

Long 数据类型--Visual Basic 2008 参考

保存 64 位(8 字节)有符号整数。范围:-9223372036854775808~9223372036854775807。

用于保存超出 Integer 类型范围的整数。默认值 0。在 6.0 以前版本中,是 32 位的。

其可以转换为 Single、Double、Decimal 而不会溢出。

在文本(如 2.5,3)后追加类型字符“L”将会将其强制转换为 Long,其标示符类型字符为“&”。

Long 对应于 .NET 的类型为 System.Int64 结构。

备注:

.NET 具有 Ulong 数据类型,用于存储无符号的 64 位整数。

 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
© 2005- 王朝百科 版权所有