首页 > 代码库 > 【1】求字符串出现次数最多的字符及次数
【1】求字符串出现次数最多的字符及次数
1 package com.exe.test1; 2 3 import java.util.HashMap; 4 import java.util.Map; 5 6 /** 7 * 输入一串字符串,求出重复次数最多的字母 8 * @author WGS 9 */10 public class Exe1 {11 12 public static String getRepeatCharacter(String str){13 StringBuilder sb=new StringBuilder(128);14 Map<Character,Integer> map=new HashMap<>();//Character:将要添加额字符,Integer:字符对应的次数15 16 //aavzbbcdeaabb17 for(int i=0;i<str.length();i++){18 char c=str.charAt(i);19 //map逐个添加str字符,如果含有将要添加的字符,就将对应的次数+120 if(map.containsKey(c)){21 map.put(c, map.get(c)+1);22 }23 //如果不含有将要添加的字符,即为第一次添加,将其次数设置为124 else{25 map.put(c, 1);26 }27 }28 //获取次数最多的29 int max=Integer.MIN_VALUE;30 //先遍历Map中的value值,即字符对应的次数,找到最大的那个次数31 for(Map.Entry<Character,Integer> entrySet:map.entrySet()){32 Integer value=http://www.mamicode.com/entrySet.getValue();33 //获取value值最大那个34 if(max < value){35 max = value;36 }37 }38 //再次遍历Map,如果字符对应的次数与max相等,即表明此字符出现次数最多39 for(Map.Entry<Character,Integer> entrySet:map.entrySet()){40 Character key=entrySet.getKey();41 Integer value=http://www.mamicode.com/entrySet.getValue();42 if(value=http://www.mamicode.com/=max){43 sb.append(key).append(":").append(value).append("\n");44 }45 }46 return sb.toString();47 }48 public static void main(String[] args) {49 System.out.println("出现次数最多的字符及次数是::"+getRepeatCharacter("eaafffvzebbcsdafedeaabffffebefff"));50 }51 52 }
【1】求字符串出现次数最多的字符及次数
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。