Java的动态表/矩阵数据结构

时间:2010-02-11 18:45:41

标签: java data-structures matrix

我需要一个类似于表的数据结构的Java实现,我可以在其中动态插入或删除行和列。我需要非常快速地从任何行或列获取数据,并且在选择列上的行时没有开销,反之亦然。

有没有人知道已经实现了这种数据结构的库?

5 个答案:

答案 0 :(得分:3)

您可以使用DefaultTableModel。它旨在与JTable一起使用,但没有理由不能单独使用它。您需要添加方法来检索整行或列的数据。

答案 1 :(得分:1)

如果性能至关重要,您可以使用2D阵列,并实施reallocation algorithm(例如加倍),以便它可以增长。

答案 2 :(得分:0)

可能是JQL或HSQL DB

答案 3 :(得分:0)

来自Google HashBasedTable库的

Guava课程可以做到这一点。如果行需要按排序顺序,还有TreeBasedTable。

答案 4 :(得分:0)

您只需使用List<List<YourClass>>即可。或者,甚至更简单Map<Integer, List<YourClass>>将行号(第一个参数,整数)映射到一行(第二个参数,YourClass对象列表,List<YourClass>)...并构建一个DataModel类此集合通过实现自定义Iterator确保遍历每行中相同数量的元素的可能性(即使行没有通过仅返回空值或空对象或类似行而没有所有元素)。