Почему n +++ n действует, а n ++++ n - нет?

В Java выражение:

n+++n

Похоже, чтобы оценить как эквивалент:

n++ + n

Несмотря на то, что+n является действительным унарным оператором с более высоким приоритетом, чем арифметика+ оператор вn + n, Таким образом, компилятор, по-видимому, предполагает, что оператор не может быть унарным оператором, и разрешает выражение.

Тем не менее, выражение:

n++++n

Не компилируется, даже если существует единственная допустимая возможность его разрешения:

n++ + +n

++n а также+n указаны как имеющие одинаковый приоритет, так почему компилятор разрешает кажущуюся неоднозначность вn+++n в пользу арифметики+ но не делает этого сn++++n?

Ответы на вопрос(0)

Ваш ответ на вопрос