java字符串abcde_java aababcabcdabcde,获取字符串中每一个字母出现的次数

news/2024/7/16 12:06:48

需求:"aababcabcdabcde",获取字符串中每一个字母出现的次数

分析:

* A:定义一个字符串(可以改进为键盘录入)

* B:定义一个TreeMap集合

* 键:Character

* 值:Integer

* C:把字符串转换为字符数组

* D:遍历字符数组,得到每一个字符

* E:拿刚才得到的字符作为键到集合中去找值,看返回值

* 是null:说明该键不存在,就把该字符作为键,1作为值存储

* 不是null:说明该键存在,就把值加1,然后重写存储该键和值

* F:定义字符串缓冲区变量

* G:遍历集合,得到键和值,进行按照要求拼接

* H:把字符串缓冲区转换为字符串输出

public class MapTest1 {

public static void main(String[] args) {

// 定义一个字符串(可以改进为键盘录入)

String content = "aababcabcdabcde";

// 定义一个TreeMap集合

TreeMap tm = new TreeMap();

//把字符串转换为字符数组

char[] chs = content.toCharArray();

//遍历字符数组,得到每一个字符

for(char ch : chs){

//拿刚才得到的字符作为键到集合中去找值,看返回值

Integer i = tm.get(ch);

//是null:说明该键不存在,就把该字符作为键,1作为值存储

if(i == null){

tm.put(ch, 1);

}else {

//不是null:说明该键存在,就把值加1,然后重写存储该键和值

i++;

tm.put(ch,i);

}

}

//定义字符串缓冲区变量

StringBuilder sb= new StringBuilder();

//遍历集合,得到键和值,进行按照要求拼接

Set 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);

}

}

原文:http://blog.csdn.net/coderinchina/article/details/41951355


https://www.xjx100.cn/news/444352.html

相关文章

高通平台LCM相关专业术语首字母缩写Acronyms(不断更新。。。)

高通平台LCM相关专业术语首字母缩写Acronyms ——Wu_Being 80-p3255-23_b_msm8953_display_quick_start.pdf Gamut Mapping (GM) Adaptive Brightness/ Backlight Adjustment (ABA) Content Adaptive Backlight (CABL) Fidelity Optimized Signal Scaling (FOSS) Apical A…

高通平台添加屏幕驱动

添加LK显示屏代码 修改/bootable/bootloader/lk/target/msm8952/oem_panel.c 添加屏幕厂家提供的驱动头文件,例: 将头文件添加到bootable/bootloader/lk/dev/gcdb/display/include/目录下 #include “include/panel_kd_ota7290b_1200p_video.h” stati…

mtk-disp开篇:名词扫盲

这里直接引用mtk对display的介绍: MDP:mutimedia data path DDP:display data path,MTK中这一部分叫ddp,下图是ddp的arch框图: OVL: RDMA & WDMA: OVL:Overlay&a…

linux系统的drm配置mipi,调试基于内核4.4的MIPI屏,是LINUX系统,求大佬帮忙

本帖最后由 彩虹的微笑 于 2018-12-10 21:02 编辑 5.870621] [drm] Rockchip DRM driver version: v1.0.1 [ 5.875929] rockchip-drm display-subsystem: devfreq is not set [ 5.882068] rockchip-vop ff940000.vop: invalid resource [ 5.887298] rockchip-vop ff94…

Vue + Element UI 实现权限管理系统 前端篇(九):接口格式定义

接口请求格式定义 前台显示需要后台数据,我们这里先把前后端交互接口定义好,没有后台的时候,也方便用mock模拟。 接口定义遵循几个规范: 1. 接口按功能模块划分。 系统登录:登录相关接口 用户管理:用户管理…

高通LCD之背光

背光控制的两种方式: 1、LCD控制IC支持动态背光控制功能(CABC)通过解析图像的直方图动态改变输出PWM的占空比从而动态调节LCD的背光,在不改变图像显示效果的情况下降低功耗,PMIC根据CABC的占空比控制背光输出电压&…

qcom平台 LCD亮灭屏流程及LCD知识点总结

一、LK中亮屏流程 1.gcdb_display_init(),进行display初始化的起始地方; 2.oem_panel_select(),在这里去选择哪一款屏,也可以在这里添加新一款屏; 3.dsi_panel_init()把屏头文件中的配置信息拷贝到结构体中,并一些屏需要的配置&am…

一文搞懂显示技术的底层框架

1. DPU与GPU的耦合是历史产物,完全可以独立出来2. DPU的原型设计 2.1【DPU的四大组成部分】2.2【KSM与DPU】3. DPU的最新设计 3.1【Source Suface Pipes or Overlays】3.2【Blender】3.3【Destination surface post-processor】3.4【Display Interface】4. 总结 PC上…