今后来做一做LeetCode上面的题(简单)
我用龟速刷题发来刷题,这样有助于我成长
题目:判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。
示例 1:
输入: 121
输出: true
示例 2:
输入: -121
输出: false
解释: 从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。
示例 3:
输入: 10
输出: false
解释: 从右向左读, 为 01 。因此它不是一个回文数。
LeetCode官网-回文数
public class PalindromeNum() {
//思路一:可以将输入的数字转化为字符串,之后就转为char[] 数组,这样可以通过for循环对比,并判断.
public boolean isPalindromeOne(int x){
String strX = String.valueOf(x); //将数字x转化为字符串
char[] value = strX.toCharArray(); //将strX转化为char数组
for(int i = 0; i < value.length/2; i++){
if(value[i] != value[value.length-1-i]){
return false;
}
}
return true;
}
//思路二 在StringBuilder中有一个reverse方法,可以将字符串翻转
public boolean isPalindromeTwo(int x){
String strX = String.valueOf(x);
String value = new StringBuilder(strX).reverse().toString();
return value.equals(strX);
}
}
写个main方法测试一下如下图所示