Арифметические операторы
1. Основные арифметические операторы Java
В следующей таблице перечислены основные арифметические операторы (или операции), применяемые в языке Java:
| Операция | Описание |
| + | Сложение (а также унарный плюс) |
| - | Вычитание (а также унарный минус) |
| * | Умножение |
| / | Деление |
| % | Деление по модулю |
Рассмотрим некоторые правила работы с арифметическими операторами:
- Выражения вычисляются слева направо, если не добавлены круглые скобки или одни операции имеют более высокий приоритет.
- Операции
*,/, и%имеют более высокий приоритет чем+и-.
Арифметические операторы над целочисленными значениями
Например, в этом коде, переменные a и b будут иметь разные значения:
public class BasicIntMath {
public static void main(String[] args) {
int a = 4 + 5 - 2 * 3;
int b = 4 + (5 - 2) * 3;
System.out.println("a = " + a);
System.out.println("b = " + b);
}
} Результат выполнения:
a = 3
b = 13 Унарные операции сложения и вычитания
- Операция унарного вычитания изменяет знак своего единственного операнда.
- Операция унарного сложения просто возвращает значение своего операнда. Она в принципе не является необходимой, но возможна.
public class UnarySignOperation {
public static void main(String[] args) {
double a = -6;
double b = +6;
System.out.println(a);
System.out.println(b);
}
} Деление целочисленных чисел в Java
Когда операция деления выполняется над целочисленным типом данных, ее результат не будет содержать дробный компонент. Это деление без остатка в Java:
public class IntDivision {
public static void main(String[] args) {
int a = 16 / 5;
System.out.println(a);
}
} Результат выполнения этой программы:
3 Арифметические операторы над переменными типа char
Операнды арифметических операторов должны иметь числовой тип. Арифметические операторы нельзя выполнять над логическими типами данных, но допускается над типами данных char, поскольку в Java этот тип, по существу, является разновидностью типа int. Например:
public class BasicCharMath1 {
public static void main(String[] args) {
char c = 'n';
System.out.println(c);
System.out.println(c + 1);
System.out.println(c / 5);
}
} Результат выполнения:
n
111
22 Или как в следующем примере:
public class BasicCharMath2 {
public static void main(String[] args) {
char c1 = '1';
char c2 = '\u0031';
char c3 = 49;
System.out.println(c1 + c2 + c3);
}
} Результат выполнения:
147 Деление по модулю в Java
Оператор деления по модулю — обозначается символом %. Этот оператор возвращает остаток от деления первого числа на второй в Java. При делении целого числа результатом будет так же целое число:
public class DivisionByModule {
public static void main(String[] args) {
int a = 6 % 5;
double b = 6.2 % 5.0;
System.out.println(a);
System.out.println(b);
}
} Результат выполнения:
1
1.2000000000000002 2. Составные арифметические операции с присваиванием
| Операция | Описание |
| += | Сложение с присваиванием |
| -= | Вычитание с присваиванием |
| *= | Умножение с присваиванием |
| /= | Деление с присваиванием |
| %= | Деление по модулю с присваиванием |
В Java имеются специальные операции, объединяющие арифметические операторы с операцией присваивания. Рассмотрим следующее выражение:
а = а + 4; B Java эту операцию можно записать следующим образом:
а += 4; Составные операции с присваиванием позволяют не только уменьшить объем кода, но и позволяют выполнять автоматическое преобразование чего не делают обычные операции:
public class CompoundOperations {
public static void main(String[] args) {
int a = 1;
int b = 2;
int c = 3;
a += 3;
b *= 2;
c += a * b;
System.out.println(a);
System.out.println(b);
System.out.println(c);
}
}
Презентацию с видео можно скачать на Patreon.
Курс 'Java для начинающих' на Udemy
Зарегистрируйтесь или войдите, чтобы иметь возможность оставить комментарий.