🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
# Kotlin 程序:检查数字是否为回文 > 原文: [https://www.programiz.com/kotlin-programming/examples/palindrome-number](https://www.programiz.com/kotlin-programming/examples/palindrome-number) #### 在此程序中,您将学习检查 Kotlin 中的数字是否为回文数。 这是通过使用 while 循环完成的。 ## 示例:回文检查程序 ```kt fun main(args: Array<String>) { var num = 121 var reversedInteger = 0 var remainder: Int val originalInteger: Int originalInteger = num // reversed integer is stored in variable while (num != 0) { remainder = num % 10 reversedInteger = reversedInteger * 10 + remainder num /= 10 } // palindrome if orignalInteger and reversedInteger are equal if (originalInteger == reversedInteger) println("$originalInteger is a palindrome.") else println("$originalInteger is not a palindrome.") } ``` 运行该程序时,输出为: ```kt 121 is a palindrome. ``` **注意**:可以将`num`的值更改为 11221,并且在运行程序时,输出为: ```kt 11221 is not a palindrome. ``` 以下是等效的 Java 代码:[用于检查回文数的 Java 程序](/java-programming/examples/palindrome-number "Java Program to Check Whether a Number is Palindrome or Not") 在这个程序中 * 首先,给定数字(`num`)的值存储在另一个整数变量`originalInteger`中。 这是因为,我们需要在最后比较反向编号和原始编号的值。 * 然后,使用`while`循环循环遍历`num`,直到等于 0。 * 在每次迭代中,`num`的最后一位存储在`remainder`中。 * 然后,将`remainder`添加到`reversedInteger`,以便将其添加到下一个位置值(乘以 10)。 * 然后,除以 10 后,从`num`中删除最后一位数字。 * 最后,比较`reversedInteger`和`originalInteger`。 如果相等,则为回文数。 如果不是,则不是。 以下是执行的步骤: 回文执行步骤 | `num` | `num != 0` | `remainder` | `reversedInteger` | | --- | --- | --- | --- | | 121 | `true` | 1 | `0 * 10 + 1 = 1` | | 12 | `true` | 2 | `1 * 10 + 2 = 12` | | 1 | `true` | 1 | `12 * 10 + 1 = 121` | | 0 | `false` | - | 121 |