1. 题目
给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false 。
回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。例如,121 是回文,而 123 不是。
2. 示例
示例1:
输入:x = 121
输出:true
示例2:
输入:x = -121
输出:false
解释:从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。
示例3:
输入:x = 10
输出:false
解释:从右向左读, 为 01 。因此它不是一个回文数。
3. 题解
1. 一般首想到的是反转数字,然后比较。
2. 转为字符串,然后依次对比i,与n-i。
我们使用第二种方式。
4. 实现
1 public class isPalindrome9 {
2 // 字符串
3 public boolean isPalindrome(int x) {
4 if(x < 0) return false;
5 String s = String.valueOf(x);
6 int left = 0, right = s.length() - 1;
7 while(left < right && s.charAt(left) == s.charAt(right)) {
8 left++;
9 right--;
10 }
11 if(left >= right) return true;
12 return false;
13 }
14
15 public static void main(String[] args) {
16 int x = 121;
17 System.out.println(new isPalindrome9().isPalindrome(x));
18 }
19 }
5. 结语
努力去爱周围的每一个人,付出,不一定有收获,但是不付出就一定没有收获! 给街头卖艺的人零钱,不和深夜还在摆摊的小贩讨价还价。愿我的博客对你有所帮助(*^▽^*)(*^▽^*)!
如果客官喜欢小生的园子,记得关注小生哟,小生会持续更新(#^.^#)(#^.^#)。