题解 | 回文数判断
回文数判断
https://www.nowcoder.com/practice/b685d58f237c4214ada27161304a74a3
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner console = new Scanner(System.in); Main main = new Main(); int number = console.nextInt(); System.out.println(main.palindromeNumber(number)); } public Boolean palindromeNumber(int number) { //write your code here...... int leftNum = number; int left = getFirstNum(number); int leftIndex = 0; int rightNum = number; int right = getLastNum(number); int rightIndex = getNumLength(number); int divide = 1; for (int i = 0; i < rightIndex - 1; i++) { divide *= 10; } while (leftIndex < rightIndex) { if (left != right) { return false; } leftNum %= divide; divide /= 10; rightNum /= 10; left = getFirstNum(leftNum); right = getLastNum(rightNum); leftIndex++; rightIndex--; } return true; } private int getNumLength(int num) { int len = 0; while (num > 0) { len++; num /= 10; } return len; } private int getFirstNum(int num) { while (num >= 10) { num /= 10; } return num; } private int getLastNum(int num) { return num % 10; } }