Я прочитал учебник по выражениям Oracle и не мог понять этого.
Хорошо известно, что следующая строка кода является допустимым синтаксисом Java:
new Object();
Однако, когда я пробую это с примитивным выражением:
(3 + 2);
Eclipse показывает ошибку компиляции "Левая часть назначения должна быть переменной".
Это верно не только для примитивов, но и для строковых литералов:
"arbitraryString";
Итак, каково правило, что неназначенное выражение должно быть действительным как строка кода Java?