菜鸟的基础问题 int a=7int b=3int xx=++a*b--;结果为什么等于24请帮忙解释一下。 谢谢 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 x=++a*b--;a=a+1;x=a*b;b=b-1a=8,x=24,b=2++a先自增,b--先做乘法运算再做自减 1. 运算符++的优先级要比*高,所以++a先被运行2. --运算符是在所修饰的变量得到执行以后才被运行,所以在参与乘积运算的时候b的值还是3,运算完成后b的值变为2 int a=7int b=3int xx=++a*b--;上面的每条语句都要加上“;”,x=++a*b--;因为++a和b--是一体的,++或--在前面的意思是先算自增自减,再运算整个表达式,在后面的话就是先运算表达式再自增自减。你可以运行x=++a*b--;后,分别打印出a和b的值看看就知道了。 对于前缀式++a是在执行完运算后才得到值,对于后缀式b++则是运算执行前就得到值,运算符++的优先级要比*高,++a要先被运行.++a*b-- ││ 8*3 ┗24 一个手机号码的正则表达式 一道外企面试题 String转换的小问题 进来看看关于ascii码的 在windows7系统下怎么将文本文件改成java文件 BufferedReader无法读取文件 如何获得绝对坐标 初学者的几个问题?(一个问题20分) 请问如何在VJ或者JDK中开发的程序中,访问HTTP网络资源 fastJson解析多层嵌套的JSON问题 AspectJ 语法 菜鸟基础问题3
a=a+1;x=a*b;b=b-1
a=8,x=24,b=2++a先自增,b--先做乘法运算再做自减
2. --运算符是在所修饰的变量得到执行以后才被运行,所以在参与乘积运算的时候b的值还是3,运算完成后b的值变为2
int b=3
int x
x=++a*b--;
上面的每条语句都要加上“;”,
x=++a*b--;
因为++a和b--是一体的,++或--在前面的意思是先算自增自减,再运算整个表达式,在后面的话就是先运算表达式再自增自减。
你可以运行x=++a*b--;后,分别打印出a和b的值看看就知道了。
++a*b--
││
8*3
┗24