Java表达式类型

Java表达式类型,java,types,expression,theory,Java,Types,Expression,Theory,我在Java手册上看到一个问题,它一直在磨我的齿轮,所以我在这里发布它来一劳永逸地解决它 问题是: 如果n和k是int类型,那么“n>k&&kk&&kk&&kk返回布尔值 k

我在Java手册上看到一个问题,它一直在磨我的齿轮,所以我在这里发布它来一劳永逸地解决它

问题是:

如果n和k是int类型,那么“n>k&&k<0”表达式将是什么类型

可能的答案:byte,boolean,int,double,无法编译

谢谢你的建议。


此表达式通常用于条件,并返回true或false。

一种简单的检查方法就是使用例如打印它。查看演示


也就是说,表达式的计算结果为布尔值。因为它的优先级高于&&,所以表达式等价于n>k&&k<0,这更容易解释。

它是布尔值,因为:n>k&&k<0

n>k返回布尔值

k<0返回布尔值

boolean&&boolean是boolean


打开您最喜欢的IDE并自己检查它-值被装箱为java.lang.Boolean,如果它是int、byte或布尔值以外的任何值,情况就不会是这样了。