java如何将int转换为boolean

Adn*_*nan 5 java int casting boolean

当我转换:

int B=1;
boolean A=B;
Run Code Online (Sandbox Code Playgroud)

它给出了错误:不兼容的类型,这是真的

但是当我写这段代码时:

int C=0;
boolean A=C==1;
Run Code Online (Sandbox Code Playgroud)

它给出了假,而如果我将C的值更改为1,则它给出了真值.我不明白编译器是如何做到的.