5

我只是尝试创建一个简单的类来计算文件的长度:

public class Size {

    long s = 0;
    int a;

    public static void main(String[]args){
        new Size();
    }

    Size(){

        try{
        FileInputStream str = new FileInputStream("E:/Eclipse/Resources/smile.jpg");

        while(a != null){
            s++;
        }
        }catch (IOException e){
            e.printStackTrace();
        }

    }


}

我遇到了一个问题

while(a != null)

我得到错误:

运算符 != 未定义参数类型 int, null

任何想法为什么它会阻止这种情况?

4

3 回答 3

20

Java 中的原始类型不能是null. 如果要检查 0,请执行a != 0.

于 2013-04-20T19:22:35.387 回答
7

放入a一个Integer对象,可以比较null

Integer value = new Integer(a);

while (value != null)
{
    // Do stuff
}
于 2013-04-20T19:29:44.497 回答
0

NULL您应该只为指针分配(或)检查值。对于整数值,将其初始化为任何数字,如标志并检查该条件。NULL can be assigned or checked only with a pointer variable

于 2013-04-20T19:23:46.890 回答