输入手机号码输出手机号码中各个数字出现的次数 , 并判断其中出现次数最多的那个数字是几?
来源:互联网 发布:windows10怎么设置网络 编辑:程序博客网 时间:2024/05/16 23:58
/**
* 要求:输入手机号码输出手机号码中各个数字出现的次数
* 并判断其中出现次数最多的那个数字是几?
*推广:可以用来测试一个其他的类型,用来统计其中每个字符出现的次数
* 和出现次数最多的某些字符
*/
import java.util.Collection;
import java.util.Collections;
import java.util.HashMap;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Scanner;
import java.util.Set;
public class TreeMapHomeWork {
public static void main(String[] args) {
show();
}
@SuppressWarnings("resource")
public static void show() {
System.out.println("你的手机号码为:");
String s = new Scanner(System.in).next();
char[] number = s.toCharArray();
// 创建一个集合用来放置输入的手机号码
Map<Character, Integer> map = new HashMap<Character, Integer>();
for (int i = 0; i < number.length; i++) {
char kz = number[i];// 把手机号遍历输出并赋值给kz及键内的元素
if (!map.containsKey(kz)) {// 判断映射内是否包含这个键内元素
map.put(kz, 1);// 如果没有则添加进入map,赋予其value的值为1
} else {// 如果映射关系中含有这个元素
int count = map.get(kz);
count++;// 那么计数器加一
map.put(kz, count);// 键内元素不变,value内的值加一(即count的值)
}
}
Set<Entry<Character, Integer>> set = map.entrySet();
// 创建一个映射关系的 set 视图,用来映射
for (Entry<Character, Integer> entry : set) {
// 使用增强for循环来遍历输出手机号码的每一个数字的出现的次数
System.out.println("数字【"+entry.getKey() + "】出现的次数为【" + entry.getValue()+"】次");
}
System.out.println(">--------------分割线----------------<");
Collection<Integer> collection = map.values();// map的value值的集合
int max = Collections.max(collection);
//调用Collections中的max方法,max详情参考API
// max即手机号码中出现次数最大值
Set<Entry<Character, Integer>> set2 = map.entrySet();
// 创建一个映射关系的 set 视图,用来映射
for (Entry<Character, Integer> entry : set2) {
// 使用增强for循环遍历输出
if (entry.getValue() == max) {
// 只输出次数最多的数字
System.out.println("数字["+entry.getKey() + "]出现的次数最多,为:[" + max+"]次");
}
}
}
}
0 0
- 输入手机号码输出手机号码中各个数字出现的次数 , 并判断其中出现次数最多的那个数字是几?
- 统计你的手机号码中出现次数最多的数字,并打印出此数字及其出现次数
- 统计你的手机号码中出现次数最多的数字,并打印出此数字及其出现次数
- 编写一个程序,对用户输入的任意一组数字字符如{3,1,4,7,2,1,1,2,2},输出其中出现次数最多的字符,并显示其出现次数。如果有多个字符出现次数均为最大且相等,则输出最先出现的那个字符和它出现
- 数组中出现次数最多的数字
- 数组中各个数字出现的次数
- golang判断切片中重复出现次数最多的数字及出现次数
- 查找一个字符串中出现次处最多的那个字符,并输出出现次数
- 提取一堆数字中出现次数最多的数字
- 给出n个数字求出其中出现次数超过 n/2的那个数字
- 找出数组中出现次数最多的数字
- 【编程题】1000个(0-9)数字的数组中查找出现次数最多的3个数字,输出这3个数字和出现的次数。
- java版本: 把手机号码里重复数字出现的次数按从多到少排列打印出来
- 统计字符串中出现次数最多的字母并输出
- 统计数组中出现次数最多的元素并输出
- 找到出现次数最多的数并输出次数
- 找出一个数组中各个数字出现的次数
- 找出数组中出现次数最多的数字&找出数组中只出现一次的数字
- 程序员面试金典 2.8 用两个栈实现队列
- Spring+Hibernate 报错java.lang.NoClassDefFoundError: org/hibernate/context/CurrentSessionContext
- 85. Three Points On A Line
- 新手指南: Linux 新手应该知道的 26 个命令
- 固定SessionID 漏洞 攻击
- 输入手机号码输出手机号码中各个数字出现的次数 , 并判断其中出现次数最多的那个数字是几?
- iOS开发系列—Objective-C之内存管理
- C语言——宏定义
- jqgrid常用的方法事件
- 从零开始——Emacs 安装配置使用教程 2015
- android mvp快速开发框架介绍(dileber使用之图片下载工具)
- day02—html之CSS基础
- GNU概念
- C#多线程动态读取word文档代码