使用数组判断输入的五位数是否为回文

输入一个五位正整数,使用数组判断它是不是回文数(例如12321是回文)

Scanner inScanner = new Scanner(System.in);
  System.out.print("请输入一个五位整数:");
  String num = inScanner.next();
  if (num.matches("\\d+")) {               // 是否输入回车
   char[] nums = num.toCharArray();            //将输入的字符串转化为一个字符长度的数组
   String num1 = "";
   for (int i = nums.length-1; i >=0; i--) {        //将输入的字符串倒序赋给num1
    num1 += nums[i];
   }
   if (num1.equals(num)) {
    System.out.println("回文");
   }else{
    System.out.println(num+"不是回文呢");
   }
  }

1)String 的matches方法:

  判断两个字符串是否是否一样

  

import java.io.*;

public class Test{
   public static void main(String args[]){
      String Str = new String("Welcome to Tutorialspoint.com");

      System.out.print("Return Value :" );
      System.out.println(Str.matches("(.*)Tutorials(.*)"));

      System.out.print("Return Value :" );
      System.out.println(Str.matches("Tutorials"));

      System.out.print("Return Value :" );
      System.out.println(Str.matches("Welcome(.*)"));
   }
}

这将产生以下结果:

Return Value :true
Return Value :false
Return Value :true

2)java.lang.String.toCharArray() 方法把这个字符串转换成一个新的字符数组.它返回一个新分配的字符数组,其长度是这样的字符串的长度,且其内容被初始化为包含由该字符串所表示的字符序列。
import java.io.*;

public class Test{
   public static void main(String args[]){
      String Str = new String("Welcome to Yiibai.com");

      System.out.print("Return Value :" );
      System.out.println(Str.toCharArray() );
   }
}

这将产生以下结果:

Return Value :Welcome to Yiibai.com
时间: 2024-10-24 17:18:35

使用数组判断输入的五位数是否为回文的相关文章

判断输入的字符串是否是回文数

<?phpfunction yuanyincount($str){ $str_len=strlen($str); $a_count=0; $e_count=0; $i_count=0; $o_count=0; $u_count=0; $other_count=0; //五种原因字母的数组,没写输出 $a_arr=array(); $e_arr=array(); $i_arr=array(); $o_arr=array(); $u_arr=array(); $other_arr=array();

java采用3种方式判断用户输入的字符串是否为回文

一.描述 回文的定义:"回文数" 就是正读倒读都一样的整数.如奇数个数字:98789, 这个数字正读是98789,倒读也是98789:偶数个数字3223也是回文数. 我们今天将回文数扩展为字母和数字组合回文,如adgu6776ugda也是回文,我们采用三种方式判断这种类型的字符串是否为回文: 1.调用StringBuffer类对象的reverse()方法,将字符串翻转后与之前的字符串比较,如果相等则为回文,反之亦然: 2.采用low和high两个变量分别对应字符串对称位置的index,

如何判断一个单向链表是否为回文链表(Palindrome Linked List)

题目:给定一个单向链表,判断它是不是回文链表(即从前往后读和从后往前读是一样的).原题见下图,还要求了O(n)的时间复杂度O(1)的空间复杂度. 我的思考: 1,一看到这个题目,大脑马上想到的解决方案就是数组.遍历链表,用数组把数据存下来,然后再进行一次遍历,同时用数组反向地与之比较,这样就可以判断是否回文.这个方法时间复杂度是O(n),达到了要求,然而空间复杂度显然不满足要求.所以,开数组这一类的方法显然不是最佳的. 2,既然要满足O(1)的空间复杂度,我就想到了用一个变量来存储这些数据,恰好

算法——回文解密,判断一个素组是否为回文

算法中,队列是先进先出原则,而栈是后进先出原则,栈限定只能在一端进行插入和删除操作,而栈的作用有哪些? 可以通过一组回文字符串来看:"xyzyx",同过栈来判断字符串是否是回文 案例:package test; /** * @author dayu 解密回文--栈 * @version 创建时间:2017年11月13日 下午2:15:01 * 类说明 */ public class zhan { //回文--一定有对称轴,所以一定是单数 public static void main(

[LeetCode]Palindrome Number 判断二进制和十进制是否为回文

class Solution { public: bool isPalindrome2(int x) {//二进制 int num=1,len=1,t=x>>1; while(t){ num<<=1; t>>=1; len++; } len/=2; while(len--){ if((num&x==0)&&(x&1)!=0){ return 0; } x&=(~num); x>>=1; num>>=2; }

9. Palindrome Number(判断整型数字是否是回文,直接暴力即可)

Determine whether an integer is a palindrome. Do this without extra space. 暴力的时候,注意奇数偶数. 1 class Solution: 2 def isPalindrome(self, x): 3 """ 4 :type x: int 5 :rtype: bool 6 """ 7 x =str(x) 8 9 if(len(x)%2!=0):#数 10 for i in

125. Valid Palindrome(判断忽略标点的字符串是否回文,加个正则,与上一题解法一样)

Given a string, determine if it is a palindrome, considering only alphanumeric characters and ignoring cases. For example,"A man, a plan, a canal: Panama" is a palindrome."race a car" is not a palindrome. Note:Have you consider that th

使用递归方式判断某个字串是否是回文( palindrome )

"回文"是指正着读.反着读都一样的句子.比如"我是谁是我" 使用递归算法检测回文的算法描述如下: A single or zero-character string is a palindrome. Any other string is a palindrome if the first and last characters are the same, and the string that remains, excepting those characters

(三)、利用命令行参数输入多个参数,判断该数组是否为回文数组

1 /* 2 利用命令行参数输入多个参数,并赋值给一数组,同时判断该数组是否为回文数组 3 –PS:例如数组{“123”,”222”,”333”,”222”,”123”}就是回文数组,即元素倒置过后与原元素一样 4 */ 5 package com.gen; 6 public class ArgumentHuiwen { 7 public static void main(String args[]) 8 { 9 int num[]=new int[100]; 10 int len=args.l