Java不使用数组即可反转int值

谁能向我解释如何在不使用数组或字符串的情况下反转整数。我从网上获得了此代码,但并没有真正理解为什么+输入%10并再次除法。

while (input != 0) {

reversedNum = reversedNum * 10 + input % 10;

input = input / 10;

}

以及如何使用此示例代码来仅反转奇数。例子我得到了这个输入12345,然后它将奇数反转为输出531。

回答:

我不清楚你的奇数。该代码的工作方式是(不是Java特定的算法)例如。输入= 2345 while循环中的第一次rev = 5输入= 234第二时间rev = 5 * 10 + 4 = 54输入= 23第三时间rev = 54 * 10 + 3输入= 2第四时间rev = 543 * 10 + 2输入= 0

因此,反转的数字是5432。如​​果你只想在反转的数字中使用奇数,那么。代码是:

while (input != 0) {    

last_digit = input % 10;

if (last_digit % 2 != 0) {

reversedNum = reversedNum * 10 + last_digit;

}

input = input / 10;

}

以上是 Java不使用数组即可反转int值 的全部内容, 来源链接: utcz.com/qa/414370.html

回到顶部