**结案。**此问题不可复制或由打字错误引起。它目前不接受答案。
**想改进这个问题吗?**更新问题,使其成为堆栈溢出的主题。
上个月关门了。
改进这个问题
下面的代码用于反转3位数字,然后在它们相等时进行检查。主要方法
public class Main {
public static void main(String[] args) {
boolean result= NumberPalindrome.isPalindrome(121);
System.out.println(result);
}
}
倒号方法
public class NumberPalindrome {
public static boolean isPalindrome(int number){
int reserve=100;
int reverseNumber=0;
while (number>0){
int lastDigit=(number%10);
reverseNumber+=(lastDigit*reserve);
reserve/=10;
number/=10;
}
System.out.println("reverse number"+reverseNumber);
if (reverseNumber==number){
return true;
}else {
return false;
}
}
}
我在while循环结束后给出了一个print语句,print给出了正确的期望值,但是if语句给出了false,即使它必须是true。
2条答案
按热度按时间0sgqnhkj1#
因为你修改了你的输入参数
number
在number /= 10
ecfdbz9o2#
你在改变
number
之前if
,只需将它赋给另一个值,然后检查它。