我想用arraylist中存储的数据填充表y
。
我有三个arraylists:bornesNom
,bornesX
和bornesY
,该表包含三列Nom
,X
和Y
。
我想设置TableModel
但不知道如何。
该表基于此模型:
TableModel bornesTableModel = new DefaultTableModel(
new String[][] { { "One", "Two","Two" }, { "Three", "Four", "Four" } },
new String[] { "Nom", "X", "Y" });
答案 0 :(得分:1)
从您的评论中我假设实际问题是如何将3个列表转换为2维数组。
除了有3个单独的列表似乎是你设计中的一个严重缺陷(你最好有一个包含一个实例数据的对象列表),我会试着给你一个提示:
创建一个二维数组,第一个维度与列表大小相同。 然后同时遍历所有列表并提取给定索引处的数据。创建并填充长度为3的String数组,并将其分配给外部数组的索引。
我将提供一个小例子,但请记住,当列表不匹配时,您必须处理案例。
基本上它可能看起来像这样:
List<String> listA = ...;
List<String> listB = ...;
List<String> listC = ...;
//note: the lists could have different lengths so this is unsafe
//I'll leave this as an excercise for you
int listLength = listA.size();
String array[][] = new String[listLength][];
for( int i = 0; i < listA.size(); i++ )
{
array[i] = new String[3];
array[i][0] = listA.get( i );
array[i][1] = listB.get( i );
array[i][2] = listC.get( i );
}
另一种选择可能是根据3个列表滚动您自己的TableModel
,但在此之前,请尝试使用适当的数据结构替换列表。