运营商是未定义(The operator is undefined)

2019-08-31 15:57发布

我只是试图做一个简单的类,它让我找出一个文件的长度:

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,空

任何想法,为什么它的阻止条件?

Answer 1:

原始类型Java中不能null 。 如果您想检查0,做a != 0



Answer 2:

aInteger对象,该对象可以null

Integer value = new Integer(a);

while (value != null)
{
    // Do stuff
}


Answer 3:

应先分配(或)检查NULL只为指针值。 为整数值,它初始化到任何数目的,像一个标志并检查该条件。 NULL can be assigned or checked only with a pointer variable



文章来源: The operator is undefined