更新时间:2020-05-22 16:01:52 来源:动力节点 浏览2411次

代码实现:
package day18_TreeMap;
import java.util.Scanner;
import java.util.Set;
import java.util.TreeMap;
/*
 * 需求:“aabbbcabcdabcde”,获取字符串中每一个字母出现的次数要求结果:a(5)b(4)c(3)d(2)e(1)
 * 
 * 分析:
 *      A:定义一个字符串(可以改进为键盘录入)
 *      B:定义一个TreeMap集合
 *          键:Character
 *          值:Integer
 *      C:把字符串转换为字符数组
 *      D:遍历字符数组,得到每一个字符
 *      E:拿刚才得到的字符作为键到集合中去找,看返回值
 *          Null:说明该键不存在,就把该字符作为键,1作为值存储
 *          不是Null:说明该键存在,就把值加1,然后重写存储该键和值
 *      F:定义字符串缓冲区变量
 *      G:遍历集合,得到键和值,进行按照要求拼接
 *      H:把字符串缓冲区转换为字符串输出
 *  
 * */
public class TreeMapTest {
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        //定义一个字符串(可以改进为键盘录入)
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入字符串:");
        String line=sc.nextLine();
        //定义一个TreeMap集合
        TreeMap<Character, Integer> tm = new TreeMap<Character,Integer>();
        //把字符串转换为字符数组
        char [] chs=line.toCharArray();
        //遍历字符数组,得到每一个字符
        for(char key:chs){
            //拿刚才得到的字符作为键到集合中去找,看返回值
            Integer i=tm.get(key);
            //判断
            if(i==null){
                //Null:说明该键不存在,就把该字符作为键,1作为值存储
                tm.put(key, 1);
            }else{
                //不是Null:说明该键存在,就把值加1,然后重写存储该键和值
                i++;
                tm.put(key, i);
            }
        }
        //定义字符串缓冲区变量
        StringBuilder sb = new StringBuilder();
        //遍历集合,得到键和值,进行按照要求拼接
        Set<Character> set = tm.keySet();
        for(Character key:set){
            Integer value=tm.get(key);
            sb.append(key).append("(").append(value).append(")");
        }
        //把字符串缓冲区转换为字符串输出
        String result=sb.toString();
        System.out.println("result:"+result);
    }
}
以上就是动力节点java培训机构的小编针对“Java编程分享,treemap实现具体实现Demo”的内容进行的回答,希望对大家有所帮助,如有疑问,请在线咨询,有专业老师随时为你服务。
						Java实验班
						0基础 0学费 15天面授
						Java就业班
						有基础 直达就业
						Java夜校直播班
						业余时间 高薪转行
						Java在职加薪班
						工作1~3年,加薪神器
						Java架构师班
						工作3~5年,晋升架构
提交申请后,顾问老师会电话与您沟通安排学习