【题目描述】

回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。

  • 例如,​​121​​​ 是回文,而 ​​123​​ 不是。

​​​​https://leetcode.cn/problems/palindrome-number/​


【示例】

【LeeCode】9. 回文数_回文数


【代码】admin

基于字符串判断, 如果一个字符串反转前后相等则是回文串

package com.company;
// 2023-01-02

class Solution {
public boolean isPalindrome(int x) {
String str = String.valueOf(x);
String sss = new StringBuilder(str).reverse().toString();
return str.equals(sss);
}
}

public class Test{
public static void main(String[] args) {
new Solution().isPalindrome(121); // true
new Solution().isPalindrome(-121); // false
new Solution().isPalindrome(10); // false

}
}


【代码】admin

基于左右字符是否相等进行判断, 如果第一个跟最后一个相等,则继续判断下一个左右字符

package com.company;
// 2023-01-02

class Solution {
public boolean isPalindrome(int x) {
String str = String.valueOf(x);
int left = 0;
int right = str.length() - 1;
for (int i = left; i <= right; i++){
if (str.charAt(left) == str.charAt(right)){
left++;
right--;
continue;
}
return false;
}
return true;
}
}

public class Test{
public static void main(String[] args) {
new Solution().isPalindrome(121); // true
new Solution().isPalindrome(-121); // false
new Solution().isPalindrome(10); // false
}
}