
java 中 if (x--==1&&y++==1||z++==1)怎么理解!
展开全部
因为&&的级别比||高,所以我们先做x--==1&&y++==1,&&左边部分的意思是x的值是否等于1,然后x的值再减一,右边的意思是y的值是否等于1,然后y再加一,如果两者都成立,这个表达式的值为true,否则为false,z++==1的意思是z的值是否为1,然后z加1,如果为1,则表达式的值为true,否则为false,因为是或,所以如果这个两个表达式中只要有一个为真,就可以执行if后面的语句,如果两个都为假,则不能满足
展开全部
不建议这么写!!!
根据java运算符的优先级来,
1 先做- -、++就是先做x- -、y++、z++
2 再做==,就是比较双等号两边的是否相等(单等号是赋值)
3 接着做&&
4最后做||
根据java运算符的优先级来,
1 先做- -、++就是先做x- -、y++、z++
2 再做==,就是比较双等号两边的是否相等(单等号是赋值)
3 接着做&&
4最后做||
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
如果(x1等于1并且y等于1,或者z等于1)
&&优先级别大于||
因为x++的意思是变量值先参加运算后变量加1
所以接着x减1z加1y加1
&&优先级别大于||
因为x++的意思是变量值先参加运算后变量加1
所以接着x减1z加1y加1
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
当X自减等于一和Y自加等于一成立,或者Z自加等于一成立是执行程序
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询