public class test {
public static void main(String[] args) {
int a = 10;
int b = (a++) + (++a) + (a * 10);
System.out.println(b);
}
}
第一句:a = 10; 运算结果是 a =10
第二句:(a++) 计算结果 a =11
第三句: 10 + (++a) 计算结果 (a++) +(++a) = 22;
第四句:b = 22 + (a*10) 计算结果 b = 142 a =12
peng84 发表于 2016-11-9 20:39
(a++)是10,然后(++a)是12,最后a是12,所以10+12+120=142
anTG 发表于 2016-11-9 22:32
a++是先运算再自增 ++a 是先自增再运算,这就是规律
feiruo521 发表于 2016-11-9 23:36
1、(a++)a值是10先提出来不管,a后边++是自增加1是11了。
2、11赋值给后边(++a)的a值了,就是++11了, ...
public static void main(String[] args) {
int a = 10;
int b = (a++) + (a++) + (a * 10);
System.out.println(b);
}
L10052108 发表于 2016-11-9 23:54
[mw_shl_code=applescript,true] public static void main(String[] args) {
int a = 10;
...
L10052108 发表于 2016-11-9 23:30
int b = (a++) + (++a) + (a * 10);
等号右边的执行顺序是什么,先计算(a++)还是(++a)
...
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) | 黑马程序员IT技术论坛 X3.2 |