/*
* 需求:输入字符串“asbdajkdbsajbdfdfdss”
*
* 输出:a(3)b(3)d(5)f(2)j(2)k(1)s(4)
*
* 分析:
* A:定义一个字符串
* B:定义TreeMap集合
* 键(key):Character
* 值(value):Integer
* C:把字符串转化成字符串数组
* D:遍历字符数组,得到每一个字符
* E:拿刚才得到的字符去集合中找值,看返回值
* 是null:说明这个字符还没有存入集合,添加键值对(“字符”,1);
* 不是null:说明这个字符已经存入,修改value,(“字符”,value+1);
* F:定义字符串缓冲区变量
* G:遍历集合,得到键和值,进行按照要求拼接
* H:把字符串缓冲区转化成字符串输出
*/
代码实现:
import java.util.Scanner;
import java.util.Set;
import java.util.TreeMap;
public class Test1 {
public static void main(String[] args) {
//定义一个字符串
Scanner sc=new Scanner(System.in);
//定义TreeMap集合
//由于要求输出是需要字符串按照自然顺序输出,所以使用TreeMap集合比较好
TreeMap<Characte