JLS :
Оператор с наименьшим приоритетом - стрелка лямбда-выражения (->) , за которой следуют операторы присваивания.
В каком направлении следовали (увеличение приоритета, уменьшение приоритета)? - «сопровождается» означает, что присвоение имеет более высокий или более низкий приоритет (по отношению к оператору стрелки)? Я думаю, при увеличении, потому что «низший» (для стрелки) означает абсолютно низший.
Как я понимаю, стрелка (->) должна находиться в самом низу этой таблицы приоритетов операторов Принстона (то есть ниже всех операторов присваивания), поэтому стрелка (->) имеет 0 (нулевой) уровень приоритета (согласно этой таблице).
Правильно ли я понимаю?
ExamTray, кажется, говорит, что приоритет стрелки, по крайней мере, такой же, как и при назначении ... Плюс уточнено, что ассоциативность стрелки имеет вид Left-> To-> Right (в отличие от назначения). Я не нашел никакой цитаты JLS для ассоциативности стрелы.
Раньше я всегда думал, что приоритет назначения является наименьшим по определенной причине.
->
это низкий Эст , операторы присваивания не могут иметь низкий эр приоритет.
IntFunction fo = a->b->a-b; // in test
Подразумевает приоритет / ассоциативность -> в целом. Поэтому я решил уточнить -> место приоритета / ассоциативности во всей таблице приоритетов / ассоциативности, потому что чувствовал себя неуверенно по этому поводу.
IntUnaryOperator op; op = x -> x;
интересен. Возможно (op = x) -> x
, не рассматривается, потому что op = x
не является действительным экземпляром LambdaParameters
производства?
The lowest precedence operator is the arrow of a lambda expression.