欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

统计用户输入的字符串中每个字符出现的次数(使用集合,最后用map集合表示粗来)

程序员文章站 2022-04-17 22:43:42
...

统计用户输入的字符串中每个字符出现的次数:

public class map {
    public static void main(String[] args) {
        method01();
    }

    private static void method01() {
        System.out.println("请输入一串随机字母,本次程序将显示一个map类型的集合:");
        String a = new Scanner(System.in).nextLine();
        /**将string转为char数组以便转换为arraylist类*/
        char[] b = a.toCharArray();
//        System.out.println(b);//打桩输出该string转换后的数组


        /**创建各种集合方便调用方法*/
        ArrayList<Character> c = new ArrayList<>();//创建arraylist数组
        HashSet<Character> d = new HashSet<>();//创建
        Map<Object, Integer> ha = new HashMap<>();
        /**将数组转为arraylist集合*/
        for (int i = 0; i < b.length; i++) {
            c.add(b[i]);
        }
        /**将arraylist转换为hashset类,并且去重*/
        for (Character ch:b) {
            d.add(ch);
        }
        /**遍历元素*/
        Iterator<Character> cha = d.iterator();
        char[] e= new char[d.size()-1];
        /**遍历hashset里的元素*/
            while (cha.hasNext()){
                /**记录元素方便给map赋值*/
                Object l = cha.next();
                /**每删除一次arraylist中的某个元素记录一次*/
                int b1 = 0;
            while (c.remove(l)){
                b1++;
                }
            /**给map赋值*/
                ha.put(l,b1);
        }
        System.out.println(ha);
    }
}

结果为:

java请输入一串随机字母,本次程序将显示一个map类型的集合:
dsfsdafsdfsdfsdfdsfsdf
[a, s, d, f]
{a=1, s=7, d=7, f=7}

一千个读者有一千个哈姆雷特,每个人的想法都不一样,求同存异!!!!!!

相关标签: java 字符串