美文网首页
回文字符串的判断及返回最大串

回文字符串的判断及返回最大串

作者: cmeizu | 来源:发表于2019-10-14 10:48 被阅读0次

    回文字符串的判断及返回最大串

    • 问题1:怎么获取一个字符串的子串?
    • 问题2:怎么判断一个字符串是回文字符串?

    问题1:

    System.out.println("输入一个字符串:");
            Scanner sc = new Scanner(System.in);
    
            String str = sc.nextLine();
            String huiwei = "";
            int max = 0;
    for (int i = 0; i < str.length(); i++) {
                for (int j = i+1; j < str.length(); j++) {
                    String tmp = str.substring(i, j);
                    if (huiweiStr(tmp)) {
                        if (max < tmp.length()) {
                          //如果获取的子串长度比原来的长,将子串的长度存下来
                            max = tmp.length();
                          //保存子串
                            huiwei = tmp;
                        }
                    }
                }
            }
    

    问题2:

    //通过将字符串反转来比较是否是回文串
    public static boolean huiweiStr(String string) {
            char[] chars1 = string.toCharArray();
            //用jdk自带的处理方式
            char[] chars = new StringBuffer(string).reverse().toString().toCharArray();
            boolean flag = true;
            for (int i = 0; i < chars.length; i++) {
                if (chars[i] != chars1[i]) {
                    flag = false;
                }
            }
            return flag;
        }
    

    相关文章

      网友评论

          本文标题:回文字符串的判断及返回最大串

          本文链接:https://www.haomeiwen.com/subject/clnlmctx.html