有没有其他非递归的方式来实现整数的逆序?
时间: 2024-09-29 21:08:33 浏览: 17
当然有非递归的方式来实现整数的逆序。我们可以使用循环(如`for`循环或`while`循环)来逐步将每一位数值添加到一个新的字符串中,然后将这个字符串转换回整数。以下是使用`StringBuilder`的例子:
```java
import java.util.Scanner;
import java.lang.StringBuilder;
public class ReverseNumberNonRecursive {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入一个整数:");
int num = scanner.nextInt();
// 使用StringBuilder逆序整数
StringBuilder sb = new StringBuilder();
while (num != 0) {
sb.append(num % 10); // 取余数并添加到字符串前
num /= 10; // 更新num为商
}
int reversedNum = Integer.parseInt(sb.toString()); // 将字符串转回整数
System.out.println("逆向输出的数字是: " + reversedNum);
}
}
```
在这个版本中,我们不断取出数字的最后一位(取模运算 `%`),并将它添加到`StringBuilder`的开头,直到`num`变成0。
阅读全文