用JAVA实现找出输入字符串中的出现次数最多的字符及其次数;
2024-08-30 00:44:32
//通过Map 类实现,通过键值对的方式,可以将输入的字符串的每一个字符,作为键,每个字符出现的次数作为值:如下: public class Find {
public static void main(String[] args){
String scan=new Scanner(System.in).nextLine();//获取键盘上输入的字符串;
Map<Character,Integer> map = new HashMap<Character,Integer>();//新建一个HashMap对象;
//通过FOR循环,把String的键值存放到map
for(int i=0;i<scan.length();i++){
char temp=scan.charAt(i);//通过循环,找到字符串的每一位字符并存入到temp中;
if(map.containsKey(temp)){//如果map里面有temp这个字符
map.put(temp, map.get(temp)+1);//把temp的值加1;
}else{//如果map里面没有temp这个字符,
map.put(temp, 1);//把temp的值设为1;
}
}
/*Collection c = map.entrySet();
Iterator it = c.iterator();
Map.Entry<Character, Integer> entry;
while(it.hasNext()){
entry = (Map.Entry<Character, Integer>) it.next();
}
*/
int maxnum = Collections.max(map.values());//调用Collections类的max方法,获取map的值的集合;并找出最大的那个值;
Set<Character> set = new HashSet<Character>();//建立一个set对象
for(Map.Entry<Character, Integer> entry1:map.entrySet()){ //通过集合的循环,把map的值放到entry1里,通过entry1找到值最大的maxnum的key;
if(entry1.getValue()==maxnum){
set.add(entry1.getKey());
}
}
System.out.println("出现次数最多的字母为:"+set+" 最多出现次数为"+maxnum); } }
最新文章
- 基于HTML5和JS实现的切水果游戏
- List 用法和实例(转载)
- Asp.net Web Api进行Nunit测试
- Spreadsheet Tracking
- stringstream vs sprintf, sscanf.
- java常用重构优化总结--自己亲身体验
- Need a code of lazy load for div--reference
- OC与JS互相调用
- DV工作流
- asp.net mvc放在iis7.5中提示404错误 js异步请求失效解决办法
- 布局 android
- Z370主板的黑苹果usb3.0驱动安装
- Windows Azure 部署 Windows 8 虚拟机
- python总结(更新中)
- redux与react-redux
- topcoder srm 310 div1
- 类定义,创建/销毁OC对象
- 使用mongo-java-driver-3.0.2连接MongoDB数据库
- 莫队算法&;BZOJ2038
- 大O算法
热门文章
- 20165230田坤烨网络对抗免考报告_基于WIN10的渗透攻击
- asp.net core api 跨域配置
- Java并发之多线程下竞态条件概念的理解
- [记录]mscorlib recursive resource lookup bug解决方法
- python 关于celery的异步任务队列的基本使用(celery+redis)【采用配置文件设置】
- 树模型常见面试题(以XGBoost为主)
- 016 Vuetify框架
- (火狐浏览器)前端以FormData类形成表单(含文件),通过ajax提交,PHP后端iconv()报“文件名含有非法字符”且POST中的‘Ttitle’丢失
- Java 加载动态库 dll 文件
- (10)ASP.NET Core 中的环境(Environments:dev, stage, prod)