В тази програма ще научите две техники за размяна на две числа в Kotlin. Първата използва временна променлива за размяна, докато втората не използва временни променливи.
Пример 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 (
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