有关Java语句的说明
public static void main(String[] args) { int x = 1 + + + + + + + + + 2; System.out.println(x); }
我可以编译上面的方法。 是否有关于允许的多个“+”运算符的任何解释?
这是补充,然后一元加运算符重复。 它相当于以下内容:
int x = 1 + (+ (+ (+ (+ (+ (+ (+ (+ 2))))))));
原因是+可以作为一元运算符 ,类似于如何 – 可以是否定运算符。 你只是将一堆一元运算符链接在一起(最后添加一个二进制数)。
它评估为1 + (+ ... (+(+(+2))) ... )
= 1 + 2 = 3
我认为他们把所有这些都视为同一个+。 因为输出是3,所以这里没有任何魔力
你没有任何例外,它工作正常。 你会得到输出3。
这是因为虽然从语法上来说似乎错误地使用了’+’但是这种一元操作正在重演。