题解 | 简单错误记录

简单错误记录

https://www.nowcoder.com/practice/2baa6aba39214d6ea91a2e03dff3fbeb

import java.util.ArrayList;
import java.util.Iterator;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import java.util.Scanner;
import java.util.Set;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        // 注意 hasNext 和 hasNextLine 的区别
        List<String> fileNameLineNoList = new ArrayList<String>();
        while (in.hasNextLine()) { // 注意 while 处理多个 case
            String fileNameLineNo = in.nextLine();
            if (!fileNameLineNoList.contains(fileNameLineNo)) {
                fileNameLineNoList.add(fileNameLineNo);
            }
            continue;
        }
        if (fileNameLineNoList.isEmpty()) {
            return;
        }
        Map<String, Integer> map = new LinkedHashMap<>();

        fileNameLineNoList.forEach(f-> {
            String[] fileNameLineNoArr =  f.split(" ");
            String directoryFileName = fileNameLineNoArr[0];
            String fileName = directoryFileName.substring(directoryFileName.lastIndexOf("\\") + 1);
            String lineNo = fileNameLineNoArr[1];
            if (fileName.length() > 16) {
                fileName = fileName.substring(fileName.length() - 16);
            }
            String fileNameLineNoNew = fileName + " " + lineNo;
            if (map.containsKey(fileNameLineNoNew)) {
                int count = map.get(fileNameLineNoNew).intValue();
                map.put(fileNameLineNoNew, count + 1);
            } else {
                map.put(fileNameLineNoNew, 1);
            }
        });
        final int count = 0;
        int mapSize = map.keySet().size();
        int start = mapSize > 8 ? mapSize - 8 : 0;
        map.entrySet().stream().skip(start).limit(8).forEach(entry-> {
            System.out.println(entry.getKey() + " " + entry.getValue());
        });

    }
}

全部评论

相关推荐

仁者伍敌:实习生要工作经验,工作要实习经验
点赞 评论 收藏
分享
Lorn的意义:你这种岗位在中国现在要么牛马天天加班,要么关系户进去好吃好喝,8年时间,真的天翻地覆了,对于资本来说你就说一头体力更好的牛马,哎,退伍没有包分配你真的亏了。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务