【发布时间】:2012-07-27 11:53:50
【问题描述】:
我正在开发一种用于在 Java 中可视化对象的工具。这个工具提供了一些标准的渲染,我想包括一些用于矩阵和表格。
此类数据最常用的类是什么?是否有无所不在的框架? 请列出您知道的所有使用过的类,而不仅仅是最常用的。
【问题讨论】:
标签: java matrix data-structures
我正在开发一种用于在 Java 中可视化对象的工具。这个工具提供了一些标准的渲染,我想包括一些用于矩阵和表格。
此类数据最常用的类是什么?是否有无所不在的框架? 请列出您知道的所有使用过的类,而不仅仅是最常用的。
【问题讨论】:
标签: java matrix data-structures
不完全清楚你所说的“可视化对象”是什么意思,但我通常使用JTable 来显示表格
编辑:我现在更了解您想要什么。我的回答是偶然的,半相关的。
最常用的方法是使用二维数组(例如 int[][])。另一种常见的方法是使用一个普通的数组(int[])和一个定义行长度的字段,给出一个方阵。不幸的是,我对此没有任何标准,但可以在这里找到一个示例:Matrix.java
和使用数组一样,也可以使用集合。只需将int[] 替换为java.util.List<E> 或将int[][] 替换为List<List<E>> 即可创建可以以相同方式使用的一维或二维动态列表。我从未见过这样做,但理论上它可以使用。
就用于表的其他类而言,如果 Java 已通过 JDBC(例如多种形式的 SQL)连接到数据库,则查询可能会返回 java.sql.ResultSet 以表示数据库中的表。
最后,对于 GUI 组件,一个表可以由javax.swing.table.TableModel 的某个子类表示。目前能想到的就这些了。
编辑:另外两种可能性,带有分隔符的单个字符串(例如 CSV 中的逗号和换行符)可用于表示表格。
未在 java 中实现但可以使用的类也可以是某种形式的链接网格(类似于链接列表,但是是二维的,而不是链接列表的链接列表)
【讨论】:
一个 x x y 数组,其中 x 是行数,y 是列数。这就是我一直表示列和表的方式。您可以通过编程方式从文本文件中获取行数和列数。
//This will make a x by y matrix or table
int [] matrix = new int [x][y];
for (int i = 0; i < x; i++) {
for (int j = 0; j < y; j++) {
//get the value
matrix[i][j] = value;
}
}
【讨论】: