int a=2;
int b=3;
int c=4;
int x = ++a+b+++c++ //这个statement该如何分解?运行的结果x等于10,然后我自己是这分解一下,不外乎是在b后面的三个加号处做文章,我试了两种分解方法.分解一为:
(++a)+(b++)+c++,这种方法的运行结果为10,分解的应该没问题分解二为:
(++a)+b+(++c)++,这种方法根本无法编译,编译错误提示如下:test.java:23: 意外的类型
需要: 变量
找到: 值
                int x = (++a)+b+(++c)++;
                                 ^
test.java:23: 运算符 + 不能应用于 int,<any>
                int x = (++a)+b+(++c)++;
                             ^
test.java:23: 不兼容的类型
找到: <nulltype>
需要: int
                int x = (++a)+b+(++c)++;我有两个问题,希望高手们问我这个菜鸟讲解一下:
1.我不明白第二种方法为什么无法通过编译,在语法上哪里出现了错误?
2.为什么要像分解一那样分解b后面的三个加号?还有没有其他正确的分解方法?