哈希表应用实例(记一次日常问题解决)

问题描述:

已知条件:100个公司(公司ID已知),每个公司有一个报告,报告内有产量

有一组记录,公司A,报告ID为1;

公司B,报告ID为2;

公司C,报告ID为3;

公司D,报告ID为4;

公司A,报告ID为5;

公司A,报告ID为6;

公司B,报告ID为7;

公司D,报告ID为8;

需求:求每个公司的产量和。

public class RecordClassifier {
    private Map> companyRecords;

    public RecordClassifier() {
        this.companyRecords = new HashMap<>();
    }

    // 添加记录的方法
    public void addRecord(String companyName, int reportId) {
        if (!companyRecords.containsKey(companyName)) {
            companyRecords.put(companyName, new ArrayList<>());
        }
        companyRecords.get(companyName).add(reportId);
    }

    // 获取某个公司的所有报告ID
    public List getRecordsForCompany(String companyName) {
        return companyRecords.getOrDefault(companyName, Collections.emptyList());
    }
}

分类之后,即可求每一类的产量和。

你可能感兴趣的:(日常问题及探究,散列表)