JAVA使用TreeMap对字符串进行排序

 更新时间:2020年02月11日 13:13:11   作者:才华横溢  
这篇文章主要介绍了JAVA使用TreeMap对字符串进行排序,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

这篇文章主要介绍了JAVA使用TreeMap对字符串进行排序,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

题目要求:

给出一个字符串:fjdjskgfhbsjkgjnsrgnaHNGKEURHGASLGNw5y74236720573。

要求:

化成字符串a(字符的个数)b()c()...

区分大小写

只读取字母

直接上代码:

import java.util.Map;
import java.util.Set;
import java.util.TreeMap;
​
/**
 * @Author caozy
 * @Date 2020/1/10 18:18
 * @Version 1.0
 */
public class TestTreeMap {
  public static void main(String[] args) {
    //treemap 自动对key排序 格局map的特点,键无序
    //键用来存储字母,值用来存储字母出现的次数
    Map<Character, Integer> treeMap = new TreeMap<>();
    String str = "ngksfdghnsFNSDLIGNRSLGN57349856734856";
    Set<Character> set = treeMap.keySet();
    for(int i=0;i<str.length();i++){
      Character st = str.charAt(i);
      //根据ASCII值筛选出所有的字母
      if((st>='a' && st<='z')||st>='A' && st<='Z'){
        //立一个flag标识
        boolean flag = true;
        for(Character ch:set){
          if(st==ch){//第一次添加该元素  个数为1
            treeMap.put(ch,treeMap.get(ch)+1);
            flag=false;
          }
        }
        if(flag){//不是第一次添加,个数加1
          treeMap.put(str.charAt(i),1);
        }
      }
    }
    for(Character ch:set){//根据题目要求遍历treemap集合
      System.out.print(ch+"("+treeMap.get(ch)+")");
    }
​
  }
}

TreeMap集合的特点

  • 一个基于红黑树的实现
  • jdk1.2开始
  • 自动排序

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • Mybatis之解决collection一对多问题(显示的结果没有整合到一起)

    Mybatis之解决collection一对多问题(显示的结果没有整合到一起)

    这篇文章主要介绍了Mybatis之解决collection一对多问题(显示的结果没有整合到一起),具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-03-03
  • 深入理解SpringBoot事务传播机制

    深入理解SpringBoot事务传播机制

    本文介绍了SpringBoot中事务传播机制的原理及其常用配置,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-12-12
  • 改变JAVA窗体属性的操作方法

    改变JAVA窗体属性的操作方法

    在本篇内容里小编给大家详细分析了关于改变JAVA窗体属性的操作方法和步骤,需要的朋友们学习下。
    2018-12-12
  • 解决JMap抓取heap使用统计信息报错的问题

    解决JMap抓取heap使用统计信息报错的问题

    这篇文章主要介绍了解决JMap抓取heap使用统计信息报错的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-12-12
  • 解决Maven本地仓库明明有对应的jar包但还是报找不到的问题

    解决Maven本地仓库明明有对应的jar包但还是报找不到的问题

    这篇文章主要介绍了解决Maven本地仓库明明有对应的jar包但还是报找不到的问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-10-10
  • Java中的值传递和引用传递区别解析

    Java中的值传递和引用传递区别解析

    这篇文章主要介绍了Java中的值传递和引用传递区别解析,引用类型的变量保存引用值,“引用值”指向内存空间的地址,代表了某个对象的引用,而不是对象本身,对象本身存放在该引用值所表示的地址的位置,包含:数组、类、接口,需要的朋友可以参考下
    2023-11-11
  • 如何通过Java打印Word文档

    如何通过Java打印Word文档

    这篇文章主要介绍了如何通过Java打印Word文档,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-02-02
  • 有关ServletConfig与ServletContext的访问

    有关ServletConfig与ServletContext的访问

    下面小编就为大家带来一篇有关ServletConfig与ServletContext的访问。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-01-01
  • Java二叉搜索树基础原理与实现方法详解

    Java二叉搜索树基础原理与实现方法详解

    这篇文章主要介绍了Java二叉搜索树基础原理与实现方法,结合图文与实例形式详细分析了Java二叉搜索树的基本概念、原理、实现方法与操作注意事项,需要的朋友可以参考下
    2020-03-03
  • springboot项目账户注册逻辑功能实现

    springboot项目账户注册逻辑功能实现

    这篇文章主要介绍了springboot项目账户注册逻辑功能实现,本文通过实例代码给大家介绍的非常详细,感兴趣的朋友一起看看吧
    2024-12-12

最新评论