| Программирование на языке Java |
| Арифметические операторы |
| Арифметические операторы используются для вычислений так же как в алгебре (см. таблицу со сводкой арифметических операторов ниже). Допустимые операнды должны иметь числовые типы. Например, использовать эти операторы для работы с логическими типами нельзя, а для работы с типом char можно, поскольку в Java тип char—это подмн
ожество типа int. Оператор Результат Оператор Результат Сложение = сложение с присваиванием - вычитание (также унарный минус) -= вычитание с присваиванием * Умножение *= умножение с присваиванием / Деление /= деление с присваиванием % деление по модулю деление по модулю с присваиванием Инкремент — декремент Четыре арифметических действия Ниже, в качестве примера, приведена простая программа, демонстрирующая использование операторов. Обратите внимание на то, что операторы работают как с целыми литералами, так и с переменными. class BasicMath { public static void int a = 1 1; int b = a * 3; main(String args[]) {int c = b / 4; int d = b—а; int e = -d; System.out.println("a = " а); System.out.println("b = " b); System.out.println("c = " c); System.out.println("d = " d); System.out.println("e = " e); } } Исполнив эту программу, вы должны получить приведенный ниже результат: C: \> java BasicMath a = 2 b = 6 c = 1 d = 4 e = -4 Оператор деления по модулю Оператор деления по модулю, или оператор mod, обозначается символом %. Этот оператор возвращает остаток от деления первого операнда на второй. В отличие от C , функция mod в Java работает не только с целыми, но и с вещественными типами. Приведенная ниже программа иллюстрирует работу этого оператора. class Modulus { public static void main (String args []) { int x = 42; double у = 42.3; System.out.println("x mod 10 = " x % 10); System.out.println("y mod 10 = " у % 10); } } Выполнив эту программу, вы получите следующий результат: С:\> Modulus x mod 10 = 2 y mod 10 = 2.3 Арифметические операторы присваивания Для каждого из арифметических операторов есть форма, в которой одновременно с заданной операцией выполняется присваивание. Ниже приведен пример, который иллюстрирует использование подобной разновидности операторов.class OpEquals { public static void main(String args[]) { int a = 1; int b = 2; int с = 3; a = 5; b *= 4; c = a * b; с %= 6; System.out.println("a = " a); System.out.println("b = " b); System.out.println("c = " c); } } А вот и результат, полученный при запуске этой программы: С:> Java OpEquals а = 6 b = 8 с = 3 Инкремент и декремент В С существует 2 оператора, называемых операторами инкремента и декремента ( и —) и являющихся сокращенным вариантом записи для сложения или вычитания из операнда единицы. Эти операторы уникальны в том плане, что могут использоваться как в префиксной, так и в постфиксной форме. Следующий пример иллюстрирует использование операторов инкремента и декремента. class IncDec { public static void main(String args[]) { int a = 1; int b = 2; int c = b; int d = a ; c ; System.out.println("a = " a); System.out.println("b = " b); System.out.println("c = " c); System.out.println("d = " d); } } Результат выполнения данной программы будет таким: C:\ java IncDec a = 2 b = 3 c = 4 d = 1 |
