根据题意已知:
int a=2;
int b=6;
1、先了解a++与++b的区别
a++是先进行取值(a直接赋值2,即a=2),后进行自增(即a=a+1,a=2+1=3);
++b是先进行自增(即b=b+1 ,b=6+1=7),后进行取值(即直接赋值7 b=7);
2、整体计算过程如下
表达式:若a,b为int型变量且已分别赋值为2,6。表达式(a++)+(++b) +a*b的值
括号的优先级别最高,先计算带括号的
a++ 表示先把a=2用过之后再对其进行+1,++b 表示在用b之前就要对其+1,所以
(a++)= 2,(++b) = 7;
然后a就会自加1之后等于3,b的值不变,
接下来是乘法的优先级高于加法 故 a*b = 3 * 7=21
再进行加法运算 2+7 +21 = 30
3、代码实战
package com.kangning.web.controller.common;
/**
* 若a,b为int型变量且已分别赋值为2,6。
* 表达式(a++)+(++b) +a*b的值是多少?
*/
public class OperationTest {
public static void main(String[] args) {
int a=2;
int b=6;
int result = (a++)+(++b) + (a*b);
System.out.println("表达式的结果是:"+result);
}
}
代码运行结果如下: