繁体   English   中英

java如何将int转换为boolean

[英]How java converts int to boolean

当我转换时:

int B=1;
boolean A=B;

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

但是当我编写这段代码时:

int C=0;
boolean A=C==1;

当我将C的值更改为1时,它给出的结果为false。 我不明白编译器是如何做到的。

int C=0;
boolean A=C==1;

编译器首先为C赋予零。

Variable : C
Value    : 0

现在,Assignment语句

我们知道赋值语句首先评估右边的部分,然后将其赋给左边。

右边==> C == 1这里,这是一个表达式,其结果为truefalse 在这种情况下,由于c is 0.因此为假c is 0.

因此,RHS是错误的。

现在,将其分配给LHS,即A。

A = ( C == 1 ) ==> A = false

由于A是布尔值,因此这是正确的陈述

C==1是一个表达式,其结果为boolean (它是比较运算符)。 如果C等于1,则返回true ,否则返回false

因此boolean A=C==1; boolean值对boolean变量的有效分配。

它首先检查c==1并将结果分配给A

因为C不为1,所以表达式值的结果为false,将其分配给A

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM