Pascal4eg

 Java | Фишки и трюки

Унарный оператор

boolean b = false;
System.out.println(b); // false
System.out.println(!b); // true

int i = -5;
System.out.println(i); // -5
System.out.println(-i); // 5
System.out.println(+i); // -5

int j = 5;
int k = 5;
System.out.println(++j + k++); // 11
System.out.println(j); // 6
System.out.println(k); // 6

Унарный оператор - это оператор, который принимает на вход один аргумент и возвращает некоторое значение.

К унарным операторам относятся: +, -, !
А так же, пре-унарный оператор и пост-унарный оператор.

- (оператор смены знака)
Собственно это всё что он делает - меняет знак переданного аргумента. Ещё есть побочный эффект от применения этого оператора, это повышение типа до int, в случае если аргумент имеет тип byte, short или char.

! - оператор логической инверсии.
Применяется только к переменным типа boolean и превращает значение из true в false и наоборот.

Операторы инкремента (++) и декремента (--) применяются к целочисленным переменным и обладают двумя вариациям:

👉 пост-инкремент/декремент (i++ и i--)

👉 пре-инкремент/декремент (++i и --i)

Разница между вариациями в том, что ++i увеличивает переменную и возвращает новое значение, а i++ возвращает старое значение, а только затем увеличивает переменную.

Что же делает унарный + ? Да ничего не делает, только имеет такой же побочный эффект как и унарный -.