DataSource接口的HashMap实现:nextRow()方法?

时间:2010-08-04 17:52:43

标签: java data-structures

我想实现一个DataSource接口(在Java中),除其他外,它允许您从数据中获取nextRow()。我最初只想通过HashMaps实现数据存储,但是从底层数据结构中抽象出来并提供如上所述的接口将会很酷。

这听起来像个好主意吗?为nextRow()实现提供HashMap方法似乎有些混乱 - 我想我需要在数据的集合视图上提供迭代器。我想我还需要提供resetIterator方法吗?

提供更多详情:

  • 我在想newRow()方法会返回HashMap<String, String>
  • HashMap数据存储的实施将为HashMap<String, HashMap<String, String>>

非常感谢任何想法和评论!

1 个答案:

答案 0 :(得分:0)

Map接口确实通过.keySet().values().entrySet()方法公开了迭代器。你可以在幕后使用其中一个来做你想到的事情。

另外,每个数据行的HashMap需要大量开销。如果您可以提前修复一组列,那么使用List(可能是ArrayList)或甚至只是一个普通数组来表示每一行会便宜很多。