Java Collections - Effienct搜索DateTime范围

chz*_*gla 2 java collections

我有一个案例,我有一个表(t1),其中包含像

 | id | timestamp | att1 | att2 |
Run Code Online (Sandbox Code Playgroud)

现在我必须迭代att1类型的元素集合,并从t1获取所有来自此att1的两个特定时间戳之间的记录.对于单个att1,我必须多次执行此操作.

因此,为了简化数据库查询,我打算将具有某个att1属性的t1中的每个条目加载到一个集合中,然后对该集合执行后续搜索.

是否有可以处理"2011-02-06 09:00:00"和"2011-02-06 09:00:30"之间搜索的集合?不保证包含这两个时间戳的条目.

在为此编写实现之前(很可能是一个非常慢的实现^^)我想问你们,是否已经有一些现有的集合或者我如何解决这个问题.

谢谢!

paj*_*ton 11

是.使用TreeMap,它基本上是key => value对的排序映射及其方法TreeMap :: subMap(fromKey,toKey).

在您的情况下,您将使用时间戳作为地图的键,以及值att1属性或id或其他最方便的方法.