zoukankan      html  css  js  c++  java
  • 开学第三周暨回文的检测

    首先定义回文,字符串长度为1或0为回文,其次当出现字符串为奇数时,运行(length-1)/2次后,只剩下最中间的一个字符,所以不必检测;当字符串长度为偶数,运行(length/2)次后,所有字符运行完毕。

    所以可知,字符串长度对程序的运行次数没有影响,都是运行(length/2)次(java中整数的运算都是取整数部分)。

    之后,定义一个boolean类型的变量a,用来判定最后输出判定结果。读取字符串,循环(length/2)次,每次将字符串的第i个字符与第(length-i)个字符进行比较,不同的话直接将a赋值false,当运行(length/2)次之后

    如果a值仍然为true,那么即说明该字符串为回文,反之,则不是回文。经过一个if语句的判断,进行结果的输出。

    源代码如下:

    package two;

    import java.util.Scanner;

    public class second {
    static Scanner sc = new Scanner(System.in);
    public static void main(String[] args){
    boolean a=false;
    System.out.println("Please input a string:");
    String str =new String();
    str=sc.next();
    if(str.length()==0||str.length()==1) {
    a=true;
    }
    else {
    int i=str.length()/2;
    int j=str.length();
    int u=0;
    while(i!=0) {
    char a1=str.charAt(u);
    char a2=str.charAt((j-1)-u);
    if(a1==a2) {
    i--;
    }
    else {
    a=false;
    break;
    }
    if(i==0) {
    a=true;
    }
    u++;
    }
    }
    if(a) {
    System.out.println("YES!,it's!");
    }
    else {
    System.out.println("No,it's not!");
    }
    }
    }

    运行结果如下:

  • 相关阅读:
    在子线程中使用Toast
    时间戳与字符串的转换
    Notification小案例
    Android文件的读写操作
    SmartImageView-网络图片查看器
    JavaScript中判断对象类型的种种方法
    nodejs npm常用命令
    web前端安全机制问题全解析
    Gulp安装及配合组件构建前端开发一体化(转)
    gulp 实现 js、css,img 合并和压缩(转)
  • 原文地址:https://www.cnblogs.com/studya/p/11585449.html
Copyright © 2011-2022 走看看