zoukankan      html  css  js  c++  java
  • 计算字符串每个字符出现的次数

    package test001;
    
    import java.util.Collection;
    import java.util.Collections;
    import java.util.HashMap;
    import java.util.Map;
    import java.util.Set;
    
    public class EveryStrCount {
    	public static void main(String[] args) 
    	 {
    	  String str = "程序员好吗>序员好吗>程序序家序序序序aabb;;;";
    	  Map<Character,Integer> map = new HashMap<Character,Integer>();
    	  char[] ch = str.toCharArray();
    	  /*将字符和出现的个数存入到Map*/
    	  for(char c:ch){
    	   if(map.get(c)==null){
    	    map.put(c, 1);
    	   }else{
    	    Integer in = map.get(c);
    	    in++;
    	    map.put(c, in);
    	   }
    	  }
    	  
    	  //取出key集合
    	  Set<Character> set = map.keySet();
    	  //根据key,取出value就可以算出字符出现的个数
    	  for(Character c:set)
    	  {
    	   System.out.println("["+c+"]"+":出现的次数为:"+map.get(c));
    	  }
    	  System.out.println();
    	  
    	  //取出value集合
    	  Collection<Integer> col = map.values();
    	  //取出最大值(也就是出现最多的次数)
    	  int charMaxIndex = Collections.max(col);
    	  //取出最小值(也就是出现最少的次数)
    	  int charMinIndex = Collections.min(col);
    	  //Map.Entry是一个接口,Map.entrySet方法返回映射的 collection 视图,获得映射项引用的
    	  //唯一方法是通过此 collection 视图的迭代器来实现。
    	  for(Map.Entry<Character, Integer> entry : map.entrySet())
    	  {
    	   if(entry.getValue().equals(charMaxIndex))
    	   {
    	    System.out.println("出现次数最多的字符是:"+entry.getKey()+":"+"它出现了:"+charMaxIndex+"次");
    	   }
    	   else if(entry.getValue().equals(charMinIndex))
    	   {
    	    System.out.println("出现次数最少的字符是:"+entry.getKey()+":"+"它出现了:"+charMinIndex+"次");
    	   }
    	  }
    	   }
    }
    

      运行结果:

    [员]:出现的次数为:2
    [b]:出现的次数为:2
    [a]:出现的次数为:2
    [;]:出现的次数为:3
    [程]:出现的次数为:2
    [吗]:出现的次数为:2
    [好]:出现的次数为:2
    [>]:出现的次数为:2
    [家]:出现的次数为:1
    [序]:出现的次数为:8
    
    出现次数最少的字符是:家:它出现了:1次
    出现次数最多的字符是:序:它出现了:8次
    

      

  • 相关阅读:
    Redis 基础、高级特性与性能调优
    CentOS 7安装新版RabbitMQ解决Erlang 19.3版本依赖
    Centos7中docker开启远程访问
    基于Docker+Jenkins+Gitlab搭建持续集成环境
    Gitlab利用Webhook实现Push代码后的jenkins自动构建
    在jenkins中调用maven的变量
    docker中gitlab-runner配置
    搭建docker私有仓库
    ku8eye 安装概览
    配置docker官方源并用yum安装docker
  • 原文地址:https://www.cnblogs.com/ckxlovejava/p/5939430.html
Copyright © 2011-2022 走看看