一到关于运算符优先级的JAVA题..求好心人带解析支援,感激!

已知:classC{publicstaticvoidmain(String[]args){booleana=true;booleanb=false;booleanc=tr... 已知:

class C {

public static void main(String[] args) {

boolean a = true;

boolean b = false;

boolean c = true;

if((a & b) | (b & c) & c)

System.out.print(“A”);

if((a = false) | (a & c)) | (a | b))

System.out.print(“B”);

}

}

输出结果为

(A)A

(B)B

(C)AB

(D)编译错误
展开
 我来答
召秋梵悌p1
2012-05-12 · TA获得超过2282个赞
知道小有建树答主
回答量:616
采纳率:80%
帮助的人:678万
展开全部
满意请鼓励。
boolean a = true; boolean b = false; boolean c = true;

if((a & b) | (b & c) & c)
//判断if(...)中条件是否为真,为真则打印"A"。现在有三个条件要综合判断。
// 条件1:(a&b) --> (true & false)-->false 对于&操作,只有两个都是true,结果才是true
//条件2:(b&c) --> (false & true) --> false 同上
//条件3:c --> true C的值本身就是true
//结果要综合判断条件: 条件1 | 条件2 & 条件3,同等优先级,判断标准从左至右
// 所以相当于 false | false & true, 也就是先判断 false|false, 然后用其结果和最后的true做&判断。
// 先是 false|false --> false, 对于|操作,至少有一个是true为true。
// 然后 用结果 false 和最后的 true做 &计算,false & true-->false
//所以最终结果 false,不执行下面的打印"A"操作。
System.out.print(“A”);

if((a = false) | (a & c)) | (a | b))
//判断if(...)中条件是否为真,为真则打印"B"。现在有三个条件要综合判断。
// 条件1:(a=false) --> 先设置a的值为false,再判断a,当然结果就是false
//条件2:(a&c) --> (false & true) --> false
//条件3:(a|b) --> (false|true)--> true 至少有一个true,返回true
//结果要综合判断条件: 条件1 | 条件2 | 条件3,同等优先级,判断标准从左至右
// 所以相当于 false | false | true, 也就是先判断 false|false, 结果false, 然后用结果false和最后的true做 | 判断,结果为true。
//所以最终结果 true,执行下面的打印"B"操作。
System.out.print(“B”);

最终,没有打印A,打印了B,答案选B。
大雅新科技有限公司
2024-11-19 广告
这方面更多更全面的信息其实可以找下大雅新。深圳市大雅新科技有限公司从事KVM延长器,DVI延长器,USB延长器,键盘鼠标延长器,双绞线视频传输器,VGA视频双绞线传输器,VGA延长器,VGA视频延长器,DVI KVM 切换器等,优质供应商,... 点击进入详情页
本回答由大雅新科技有限公司提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式