阅读以下代码行,这段程序执行完后,c 与 result 的值是:

boolean a = false;
boolean b = true;
boolean c = (a && b) && (!b);
int result = c == false ? 1 : 2;

A. c=false; result=1; B. c=true; result=2; C. c=true; result=1; D. c=false; result=2;

要求:说明理由

答案为 A. c=false; result=1。

首先,根据逻辑运算符的优先级,先执行 && 运算符,所以 (a && b) 的结果为 false。接着,执行 !b 的运算,结果为 true。因此,c 的值为 false && true,即 false。

最后,根据三目运算符的逻辑,因为 c 的值为 false,所以执行 c==false 分支,result 的值为 1。


原文地址: https://www.cveoy.top/t/topic/jZbo 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录