У цій програмі ви вивчите дві техніки обміну двома числами в Котліні. Перший використовує тимчасову змінну для обміну, тоді як другий не використовує жодних тимчасових змінних.
Приклад 1: Поміняйте місцями два числа, використовуючи тимчасову змінну
fun main(args: Array) ( var first = 1.20f var second = 2.45f println("--Before swap--") println("First number = $first") println("Second number = $second") // Value of first is assigned to temporary val temporary = first // Value of second is assigned to first first = second // Value of temporary (which contains the initial value of first) is assigned to second second = temporary println("--After swap--") println("First number = $first") println("Second number = $second") )
Коли ви запускаєте програму, результат буде:
- Перед свопом - Перше число = 1,2 Друге число = 2,45 - Після заміни - Перше число = 2,45 Друге число = 1,2
У наведеній вище програмі, два числа 1.20f
і 2.45f
які повинні бути замінені, зберігаються в змінних: перший і другий відповідно.
Змінні друкуються перед заміною за допомогою, println()
щоб чітко побачити результати після завершення заміни.
- По-перше, значення first зберігається у змінній тимчасовий (
temporary = 1.20f
). - Потім значення second зберігається в first (
first = 2.45f
). - І, нарешті, значення тимчасового зберігається у секунді (
second = 1.20f
).
На цьому процес заміни завершується, і змінні друкуються на екрані.
Пам'ятайте, єдине використання тимчасового - це утримання значення first перед обміном. Ви також можете поміняти місцями місцями, не використовуючи тимчасові.
Приклад 2: Поміняйте місцями два числа без використання тимчасової змінної
fun main(args: Array) ( var first = 12.0f var second = 24.5f println("--Before swap--") println("First number = $first") println("Second number = $second") first = first - second second = first + second first = second - first println("--After swap--") println("First number = $first") println("Second number = $second") )
Коли ви запускаєте програму, результат буде:
- Перед свопом - Перше число = 12,0 Друге число = 24,5 - Після заміни - Перше число = 24,5 Друге число = 12,0
У наведеній вище програмі замість тимчасової змінної ми використовуємо просту математику для обміну цифрами.
Для операції (first - second)
важливо зберігання . Спочатку це зберігається у змінній.
перший = перший - другий; перший = 12.0f - 24.5f
Потім ми просто додаємо second ( 24.5f
) до цього числа - обчислюємо first ( 12.0f - 24.5f
) для заміни числа.
другий = перший + другий; другий = (12.0f - 24.5f) + 24.5f = 12.0f
Тепер має місце друге 12.0f
(що спочатку було значенням першого). Отже, ми віднімаємо обчислене first ( 12.0f - 24.5f
) від swapped second ( 12.0f
), щоб отримати інше замінене число.
перший = другий - перший; перший = 12.0f - (12.0f - 24.5f) = 24.5f
Замінені номери друкуються на екрані за допомогою println()
.
Ось еквівалентний код у Java: поміняйте місцями два числа в Java