第11次作业--字符串处理

一、题目1

  编写一个应用程序,统计输入的一个字符串中相同字符的个数,并将统计结果输出。

二、代码

Test.java

 

package Seventeenth;

/*
 * 通过remove移除相同的字符放到数组中,然后再进行比较
 * 
 */
import java.util.Scanner;

public class Test {
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入一个字符串");
        String str = sc.next();
        char[] a = new char[str.length()];
        char[] b = new char[str.length()];
        int[] c = new int[str.length()];
        char[] d = new char[str.length()];
        String g = "";
        a = str.toCharArray();
        b = str.toCharArray();
        /*
         * for (int i = 0; i < str.length(); i++) { int number = 0; for (int j
         * =0; j < str.length(); j++) { if (a[i] == b[j]) { number++; } }
         * c[i]=number; System.out.println(c[i]); }
         */
        g = Test.remove(str);
        for (int i = 0; i < g.length(); i++) {
            d = g.toCharArray();
        }

        for (int i = 0; i < g.length(); i++) {
            int number = 0;
            for (int j = 0; j < g.length(); j++) {
                if (d[i] == a[j]) {
                    number++;
                }
            }
            c[i] = number;

            System.out.println("字符串中" + d[i] + "" + (c[i] + 1));
        }
    }

    public static String remove(String str) { // 去除数组里面重复的字符
        StringBuffer sb = new StringBuffer();
        for (int i = 0; i < str.length(); i++) {
            char every = str.charAt(i);
            int first = str.indexOf(every);
            int last = str.lastIndexOf(every);
            if (last == first || first == i) {
                sb.append(every);
            }
        }
        return sb.toString();
    }
}

三、运行结果

一、题目2

  编写程序,输入一个字符串,判断该串中的字母能否组成一个回文串(回文串:一个字符串从前向后读取和从后向前读取都一样)。如:abcba

二、代码

Test.java

package Eighteenth;
/*
 * 用stringbuffer的reverse方法进行字符串的逆置
 * 
 */
import java.util.Scanner;

public class Test {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        System.out.println("请输入相应的字符串");
        Scanner sc=new Scanner(System.in);
        String s = sc.next();
        StringBuffer res = new StringBuffer(s);
        res.reverse();
        String rev = new String(res);
        if (rev.equals(s)) {
            System.out.println("你输入的字符串是回文");
        } else {
            System.out.println("你输入的字符串不是回文");
        }
    }
}

三、运行结果

posted @ 2019-11-19 17:40  薄暮JIM  阅读(149)  评论(0编辑  收藏  举报