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.20f 和 2.45f 存储在变量 first 和 second 中。
在交换之前,使用 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中的交换两个数字