由于最近有很多运算符优先级问题,我开始玩一些代码并想出了这个:
int x = someNumber;
int y = --x++;
这给出了:
Error: unexpected type
required: variable
found: value
我尝试这样做是因为我有兴趣了解 java 如何处理postfix
运算符优先级高于prefix
. 这似乎上面的陈述会导致矛盾,我猜这是由这个错误处理的。
我的问题有两个:
- 为什么会出现这个错误?这到底是什么意思?
- 为什么
postfix
的优先级高于prefix
?我敢肯定这是有充分理由的,但我一直无法想出一个。也许它会修复这种未定义的行为,但它会以某种方式引发更多问题?