【发布时间】:2015-04-24 06:02:36
【问题描述】:
我正在使用 Java 处理一个非常大的文件(包含数百万条小行。我需要处理的文件总大小约为 200 GB)。我正在寻找存储重复行及其计数的最佳方法。例如,如果我的文件如下:
Chicago
New York
Chicago
LA
Chicago
LA
那我要存储以下信息:
Chicago 3
New York 1
LA 2
我认为最好的方法是HashMap<String, Int>。但是,由于有数百万个值,在处理一条线时:我需要在地图中搜索该线是否已经存在于地图中。如果是,那么我需要将计数增加 1,然后处理下一行。
有没有更有效的方法来做到这一点?
【问题讨论】:
标签: java data-structures hashmap