黑马程序员技术交流社区

标题: 点招上机题模拟1 [打印本页]

作者: 恐高的鸟    时间: 2016-6-6 22:58
标题: 点招上机题模拟1
Test1--取出一个字符串中字母出现的次数。如:字符串:"abcdekka27qoq",输出格式为:a(2)b(1)k(2)...
作者: 何亚辉    时间: 2016-6-7 13:56
package com.heima.IO;

import java.io.IOException;
import java.util.Scanner;
import java.util.Set;
import java.util.TreeMap;
/*取出一个字符串中字母出现的次数。如:字符串:"abcdekka27qoq",输出格式为:a(2)b(1)k(2)...*/

public class Day1_ClassTest2 {
        public static void main(String[] args) throws IOException {
        Scanner sc = new Scanner(System.in);
        String s = sc.nextLine();
        char[] ch = s.toCharArray();
       
        TreeMap<Character, Integer> tm = new TreeMap<>();
        for (char c : ch) {
                if((c>='A'&&c<='Z')||(c>='a'&&c<='z')){
                        if(tm.containsKey(c)){
                                tm.put(c, tm.get(c)+1);
                        }else{
                                tm.put(c, 1);
                        }
                }
        }
       
        Set<Character> st = tm.keySet();
        for (Character cha : st) {
                System.out.print(cha+"("+tm.get(cha)+")");
        }

        }

}
作者: 何亚辉    时间: 2016-6-7 14:05
package com.heima.IO;

import java.io.IOException;
import java.util.Scanner;
import java.util.Set;
import java.util.TreeMap;

/*取出一个字符串中字母出现的次数。如:字符串:"abcdekka27qoq",输出格式为:a(2)b(1)k(2)...*/

public class Day1_ClassTest2 {
        public static void main(String[] args) throws IOException {
                Scanner sc = new Scanner(System.in);
                String s = sc.nextLine();
                StringBuffer sb = new StringBuffer();
                for (int i = 0; i < s.length(); i++) {
                        char c = s.charAt(i);
                        if (c >= 'a' && c <= 'z' || c <= 'Z' && c >= 'A') {
                                sb.append(c);
                        }
                }

                s = new String(sb);
                for (int i = 0; i < s.length();) {
                        int a = s.length();
                        char[] ch = new char[1];
                        ch[0] = s.charAt(0);
                        s = s.replace(new String(ch), "");
                        System.out.print(ch[0] + "(" + (a - s.length()) + ")");
                }

        }

}




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2