English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
在此程序中,您将学习如何用Java检查数字是否为回文。这是通过使用for和while循环来完成的。
public class Palindrome { public static void main(String[] args) { int num = 121, reversedInteger = 0, Rest, originalInteger; originalInteger = num; //反向整数存储在变量中 while(num != 0) { Rest = num % 10; reversedInteger = reversedInteger * 10 + Rest; num /= 10; } //如果orignalInteger和reversedInteger相等,则回文 if (originalInteger == reversedInteger) System.out.println(originalInteger + "是回文。"); else System.out.println(originalInteger + "不是回文。"); } }
Wenn das Programm ausgeführt wird, lautet die Ausgabe:
121 是回文。
在这个程序中
首先,给定数字(num)的值存储在另一个整数originalInteger变量中。这是因为,我们需要在最后比较反向数字和原始数字的值。
然后,使用while循环循环遍历num,直到等于0。
每次迭代时,num的最后一位存储在中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 |
public class Palindrome { public static void main(String[] args) { int num = 11221, reversedInteger = 0, Rest, originalInteger; originalInteger = num; //Der umgekehrte Integer wird in einer Variable gespeichert for( ;num != 0; num /= 10 ) { Rest = num % 10; reversedInteger = reversedInteger * 10 + Rest; } //Palindrom, wenn das ursprüngliche Integer und das umgekehrte Integer gleich sind if (originalInteger == reversedInteger) System.out.println(originalInteger + "ist ein Palindrom."); else System.out.println(originalInteger + "ist kein Palindrom."); } }
Wenn das Programm ausgeführt wird, lautet die Ausgabe:
11221 ist kein Palindrom.
Im obigen Programm wird der for-Schleife der while-Schleife ersetzt.
In jeder Iteration, num /= 10Führt alle aus und überprüft die Bedingung num != 0.