long不能为空,因为它是简单数据类型,如果是Long就可以为空。
定义long的时候除非是类或是结构体中的属性,否则会要求你先赋初值的。如long a=0;作为属性时,系统会默认赋一个“0”值。所以一般情况,可以用if(a==0)来判断long值是否被改变。
扩展资料:
long标识符
可如下例所示声明并初始化 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
参考资料来源:百度百科--C语言
long不能为空,因为它是简单数据类型,如果是Long就可以为空。
定义long的时候除非是类或是结构体中的属性,否则会要求你先赋初值的。如long a=0;作为属性时,系统会默认赋一个“0”值。所以一般情况,可以用if(a==0)来判断long值是否被改变。
正常来讲long是不可能为空的, 因为在方法体中声明, long是不能赋值为null, 而不给初值:
long l; System.out.println(l);
这么写编译不过去.
如果long在成员变量里没有赋值的话, 会取默认值0.
只有包装类型Long, 可能为空, 这种情况直接就用== null 就可以判断了. 是在不行你就用try{...}catch (NullPointerException e) {...}来截获吧.
long 如果不赋值就是 0,不存在“为空”的情况。
long 类型不行。因为它是值类型。
它的原型可以。因为它是对象类型。Long l = null;
if(null == l){
}