zoukankan      html  css  js  c++  java
  • 算法与编程2

    从类似如下的文本文件中读取出所有的姓名,并打印出重复的姓名和重复的次数,并按重复次数排序:

    1,张三,28

    2,李四,35

    3,张三,28

    4,王五,35

    5,张三,28

    6,李四,35

    7,赵六,28

    8,田七,35

    package cn.suanfa;
    
    import java.io.BufferedReader;
    import java.io.FileNotFoundException;
    import java.io.FileReader;
    import java.io.IOException;
    import java.io.Reader;
    import java.util.ArrayList;
    import java.util.Collections;
    import java.util.Comparator;
    import java.util.HashMap;
    import java.util.HashSet;
    import java.util.List;
    import java.util.Map;
    import java.util.Map.Entry;
    import java.util.TreeMap;
    
    public class Test0222 {
    
        public static void main(String[] args) throws IOException {
        Reader reader=new FileReader("src/data.txt");
        BufferedReader buffered=new BufferedReader(reader);
        String data=null;
        Map<String, Integer> map=new HashMap<String,Integer>();
        while ((data=buffered.readLine())!=null) {//循环读取每一行
            String[] sa= data.split(","); //id name  age
        if (map.containsKey(sa[1])) {  //集合中已经存在的学生
            map.put(sa[1], map.get(sa[1])+1);
        }else{
            map.put(sa[1], 1);//之前没有这个名字作为key
        }
        }
        //将双列集合数据转移到单列集合
        List<Entry<String, Integer>> list=new ArrayList<Entry<String,Integer>>(map.entrySet());
         Collections.sort(list,new Comparator<Entry<String, Integer>>() {
    
            @Override
            public int compare(Entry<String, Integer> o1, Entry<String, Integer> o2) {
            
                return o1.getValue().compareTo(o2.getValue());
            }
            
        });
         for (Entry<String, Integer> entry : list) {
            System.out.println(entry.getKey()+"	"+entry.getValue());
        }
        buffered.close();
        reader.close();
        }
        
    }
  • 相关阅读:
    设计模式
    Lambda表达式
    网络通信
    排序
    可变参数
    反弹shell学习总结
    Apache Flink任意Jar包上传导致远程代码执行漏洞复现
    定时执行rsync同步数据以及mysql备份
    python练习
    django 模型生成sql(多对多)
  • 原文地址:https://www.cnblogs.com/caiguoxin/p/9332448.html
Copyright © 2011-2022 走看看