运算符未定义

Syn*_*tic 5 java operator-keyword

我只是尝试创建一个简单的类,让我弄清楚文件的长度:

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();
        }

    }


}
Run Code Online (Sandbox Code Playgroud)

我遇到了一个问题

while(a != null)
Run Code Online (Sandbox Code Playgroud)

我收到错误:

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

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

son*_*fRa 17

Java中的原始类型不可能null.如果你想检查0,那么a != 0.


syb*_*0rg 6

放入a一个Integer对象,可以与以下对象进行比较null

Integer value = new Integer(a);

while (value != null)
{
    // Do stuff
}
Run Code Online (Sandbox Code Playgroud)