不嫌多的话两题写下代码,嫌多就写第一题,第二题写下递归的思想

//1 有一个字符串 String s = "aabbbc" 求字符串中每个字符的出现次数
//结果 a 2 b 3 c 1

//提高要求
//将结果按照字符的出现次数升序输出
//结果  c a b

//2 提高题 输入一个字符串 通过递归 返回逆序字符串
//比如"abc" 递归方法 返回"cba"

        public static void main(String[] args) {
            ArrayList<Character> arrayList = new ArrayList<Character>();
            String s="aabbbc";

            //将字符串转为字符数组后遍历其元素存储到list集合中
            char[] c=s.toCharArray();
            for (char c1:c){
                arrayList.add(c1);
            }

            //统计字符出现的次数
            //创建一个Map集合,字符作为键,字符出现的次数为值,当遇到相同的键时,值加加
            HashMap<Character, Integer> map = new HashMap<>();
            for (char c1:arrayList){
                //定义i记录字符数
                int i;
                //判断集合中是否含有该键
                if(map.containsKey(c1)){
                    i=map.get(c1);
                    i++;
                    map.put(c1,i);
                }else {
                    //第一次出现的设置键值为1
                    map.put(c1,1);
                }
            }

            //遍历map集合
            Set<Character> characters = map.keySet();

            for (char c1:characters){
                int i=map.get(c1);
                System.out.println(c1+"有"+i+"个");
            }

            ////提高要求
            ////将结果按照字符的出现次数升序输出

            System.out.println("-------------------");
            ArrayList<Character> cc = new ArrayList<>();
            for (char c1:characters){
               cc.add(c1);
            }

            Collections.reverse(cc);
            for (Character character : cc) {
                System.out.print(character+",");
            }
        }

---第二题 :

public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);

        String next = scanner.next();

        String s = myReverse(next);

        System.out.println(s);
    }

    public static  String myReverse(String str){

        if (str ==null||str.length() <= 1)
        {
            return str;
        }

        return myReverse(str.substring(1))+str.charAt(0);
    }