Оператор Java yary plus, похоже, перешел с C через С++.
int result = +1;
Кажется, что он имеет следующие эффекты:
- Unboxes его операнд, если это объект-оболочка
- Помогает своему операнду
int
, если он еще неint
или более широкий - Усложняет слегка разбор злых выражений, содержащих большое количество последовательных знаков плюс
Мне кажется, что есть лучшие/более четкие способы сделать все эти вещи.
В этот вопрос SO, касающийся оператора-партнера в С#, кто-то сказал, что "это будет перегружено, если вы почувствуете необходимость".
Однако на Java нельзя перегрузить любой оператор. Таким образом, этот оператор унарного плюса существует в Java только потому, что он существовал в С++?