跳到主要内容

Kotlin 程序:交换两个数字

示例1:使用临时变量交换两个数字

fun main(args: Array<String>) {

var first = 1.20f
var second = 2.45f

println("--交换前--")
println("第一个数字 = $first")
println("第二个数字 = $second")

// 将第一个的值赋给临时变量
val temporary = first

// 将第二个的值赋给第一个
first = second

// 将临时变量(包含第一个的初始值)的值赋给第二个
second = temporary

println("--交换后--")
println("第一个数字 = $first")
println("第二个数字 = $second")
}

当您运行该程序时,输出将为:

--交换前--
第一个数字 = 1.2
第二个数字 = 2.45
--交换后--
第一个数字 = 2.45
第二个数字 = 1.2

在上面的程序中,要交换的两个数字 1.20f2.45f 存储在变量 firstsecond 中。

在交换之前,使用 println() 打印这些变量,以便在交换完成后清楚地查看结果。

  • 首先,将 first 的值存储在变量 temporary 中(temporary = 1.20f)。
  • 然后,将 second 的值存储在 first 中(first = 2.45f)。
  • 最后,将 temporary 中的值(其中包含了 first 的初始值)存储在 second 中(second = 1.20f)。

这完成了交换过程,变量将被打印在屏幕上。

请记住,temporary 的唯一用途是在交换之前保存 first 的值。您也可以在不使用 temporary 的情况下交换这些数字。

示例2:不使用临时变量交换两个数字

fun main(args: Array<String>) {

var first = 12.0f
var second = 24.5f

println("--交换前--")
println("第一个数字 = $first")
println("第二个数字 = $second")

first = first - second
second = first + second
first = second - first

println("--交换后--")
println("第一个数字 = $first")
println("第二个数字 = $second")
}

当您运行该程序时,输出将为:

--交换前--
第一个数字 = 12.0
第二个数字 = 24.5
--交换后--
第一个数字 = 24.5
第二个数字 = 12.0

在上面的程序中,我们使用简单的数学方法来交换数字,而不是使用临时变量。

对于操作,存储(first - second) 是重要的。这被存储在变量 first 中。

first = first - second;
first = 12.0f - 24.5f

然后,我们只需上这个数字 - 计算的 first (12.0f - 24.5f),以交换这个数字。

second = first + second;
second = (12.0f - 24.5f) + 24.5f = 12.0f

现在,second 包含 12.0f(这最初是 first 的值)。所以,我们从交换后的 second (12.0f) 中减去计算的 first (12.0f - 24.5f) 以获得另一个交换后的数字。

first = second - first;
first = 12.0f - (12.0f - 24.5f) = 24.5f

交换后的数字将使用 println() 打印在屏幕上。

这里是Java中的等效代码:Java中的交换两个数字