判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。
class Solution {
public boolean isPalindrome(int x) {
String str=String.valueOf(x);//把整数转换成字符串
int strLength=str.length();
int i,j;
//如果是回文数,那么左右两侧的数字应该是对称的,所以可以直接从首末端开始,比较对应位置的数字是否相同。
for (i=0,j=strLength-1;(i<=(strLength/2))&(j>=(strLength/2));i++,j--){
if(str.charAt(i)!=str.charAt(j)){
return false;
}
}
return true;
}
}
其它思路:
1、把整数进行反转再比较两个数是否相等,但这样有可能会造成溢出。
2、反转整数的一半数字,然后比较是否相同。