Обмен значений переменных — введение в Java 024 #
Допустим у нас есть переменная A со значением 5 и переменная B со значением 3. И нам нужно поменять значения у переменных местами. Это достаточно часто используемая операция и есть далеко не один способ её реализации.
int a = 5;
int b = 7;
int temp = a;
a = b;
b = temp;
Мы создаём дополнительную переменную. Передаём ей временно для хранения значение A, в само A передаём значение B. В B присваиваем значение, которое у нас хранится во временной переменной.
Существуют способы поменять их местами не создавая новую переменную.
public class Main {
public static void main(String[] args) {
int a = 5;
int b = 3;
// меняем местами пошагово
a = a + b;
b = a - b;
a = a - b;
// меняем местами в одну строчку.
a = a + b - (b = a);
// меняем местами пошагово с помощью XOR
a = a ^ b;
b = b ^ a;
a = a ^ b;
}
}
Вариант с созданием дополнительной переменной легко читаемый и понятный всеми вариант.
Домашнее задание #
- Попробуйте дополнительно поменять местами переменные используя другие арифметические операторы.