【发布时间】:2017-01-04 18:58:22
【问题描述】:
我的程序正在搜索日志,并计算某些事件发生的次数(以及与每个事件关联的字节数)。我想将我感兴趣的事件存储为 (key, value1, value2),其中字符串是键,值是两个长整数。我需要能够搜索结构中是否存在键,并且我需要能够修改两个长值。
我不会走数据库路线或将数据存储在另一个文本文件中。
我没有成功使用 Stack Overflow 搜索找到一些东西,Oracle 教程和集合文档对我帮助不大。我的选择(据我所知)是:
- 由(字符串、数组)组成的映射
- 2D 数组(我将字符串调换成 long 并返回)
- 元组对象
我是否忽略了其他更好的可能解决方案?如果没有,你建议我使用哪个?
提前致谢!
【问题讨论】:
-
我不明白为什么哈希映射不能简单地完成这项工作。好像没那么复杂
-
@VicSeedoubleyew oracle 文档声明“每个键最多可以映射到一个值”,我需要一个键来映射到两个值。见docs.oracle.com/javase/6/docs/api/java/util/Map.html。我认为带有字符串键和元组的映射是要走的路(Aaron Davis 的回答)。
-
是的,这就是我所说的简单哈希图的意思。存储值元组或存储值没有太大区别
标签: java arrays collections set storing-data