判断一个数是否是回文数,只需要判断这串数字的首尾对称位置的数字是否是相等的;
如果这串数字有奇数个数字,则中间的那个数字不要判断;
关键代码如下:
public class isPalindrome{ public static void main(String[] args){ System.out.println("请输入一串数字:"); java.util.Scanner input =new Scanner(System.in); String numstring = input.nextLine(); int low = 0; int high = numString.length - 1; boolean isPalindrome=true; while(low < high){ if(numString.charAt[low] != numString.charAt[high]){ isPalindrome = false; break; } low++; high--; } if(isPalindrome) System.out.println(numString + "is a palindrome"); else System.out.println(numString + "is not a palindrome"); }
Scanner:【标准输入流】
有两种使用方法:
import java.util.* //或者 import java.util.Scanner Scanner 对象名 = new Scanner(System.in); //对象名自取
java.util.Scanner 对象名 = new java.util.Scanner(System.in);
注意:输入完以上两种格式中的一种,只是打开了输入方法的大门,要想接收输入的内容,还是需要以下格式:
//这里的对象名和上面的一样 //接收整型数据 int intValue = 对象名.nextInt(); //双精度型 double doubleValue = 对象名.nextDouble(); nextLong\nextByte .....
如何接收字符串呢?
String s = 对象名.nextLine(); //也可以是next(); //String s = 对象名.next();
next()和nextLine()的区别:
next()遇到空白字符(\n,\t,空格,\f,\r)就知道输入结束了,
而next Line()需要换行符(\n)才知道输入结束,换句话说,nextLine()是用来读取一行文本的方法。
说到空白字符,不得不提java中的字符串类有个trim()方法:
trim():
一个可以去除字符串头尾空白字符的方法,返回新的字符串。