示例:在Kotlin中反转数字
fun main(args: Array<String>) {
var num = 1234
var reversed = 0
while (num != 0) {
val digit = num % 10
reversed = reversed * 10 + digit
num /= 10
}
println("Reversed Number: $reversed")
}
运行程序后,输出将是
Reversed Number: 4321
在此程序中,while 循环用于按照以下步骤反转数字:
- 首先,num除以10的余数存储在变量digit中。现在,digit包含num的最后一位数字,即4。
digit然后通过乘以10后加到变量reversed中。乘以10会在反转的数字中增加一个位。个位乘以10得到十位,十位得到百位,依此类推。在这种情况下,reversed包含0 * 10 + 4 = 4。
num然后除以10,这样它只包含前三位数字:123。 - 第二次迭代后,digit等于3,reversed等于4 * 10 + 3 = 43,num = 12
- 第三次迭代后,digit等于2,reversed等于43 * 10 + 2 = 432,num = 1
- 第四次迭代后,digit等于1,reversed等于432 * 10 + 1 = 4321,num = 0
- 现在num = 0,因此测试表达式
num != 0
失败,while循环退出。reversed已经包含反转的数字4321。
这是等效的Java代码:Java程序反转数字