菜单 学习猿地 - LMONKEY

VIP

开通学习猿地VIP

尊享10项VIP特权 持续新增

知识通关挑战

打卡带练!告别无效练习

接私单赚外块

VIP优先接,累计金额超百万

学习猿地私房课免费学

大厂实战课仅对VIP开放

你的一对一导师

每月可免费咨询大牛30次

领取更多软件工程师实用特权

入驻
411
0

编写一个应用程序,利用数组或者集合, 求出"HELLO",“JAVA”,“PROGRAM”,“EXCEPTION”四个字符串的平均长度以及字符出现重复次数最多的字符串。

原创
05/13 14:22
阅读数 40713
public class Number {
	public static void main(String[] args) {
		String[] arr = { "HELLO", "JAVA", "PROGRAM", "EXCEPTION" };
		double sum = 0;
		for (int i = 0; i < arr.length; i++) {
			sum += arr[i].toCharArray().length;
		}
		double avg = sum / arr.length;
		System.out.println("四个字符串的平均长度为:" + avg);
		ArrayList<Map<Character, Integer>> list = new ArrayList<>();
		for (int i = 0; i < arr.length; i++) {
			Map<Character, Integer> map = new HashMap<Character, Integer>();
			char[] str = arr[i].toCharArray();
			for (int j = 0; j < str.length; j++) {
				if(map.get(str[j])!=null) {
					map.put(str[j], map.get(str[i])+1);
				}else {
					map.put(str[j], 1);
				}
			}
			list.add(map);	
		}
		int max = -1;
		for (int i = 0; i < list.size(); i++) {
			for (Map.Entry<Character, Integer> entry : list.get(i).entrySet()) {
				if(max < entry.getValue()) {
					max = entry.getValue();
				}
			}
		}
		for (int i = 0; i < list.size(); i++) {
			for (Map.Entry<Character, Integer> entry : list.get(i).entrySet()) {
				if(max == entry.getValue()) {
					System.out.println(arr[i]);
					break;
				}
			}
		}
	}
}

发表评论

0/200
411 点赞
0 评论
收藏