可变数量的二维数组成一个大数组

1 java multidimensional-array

我有一个可变数量的二维数组.第一个维度是可变的,第二个维度是不变的.即:

Object[][] array0 = {
{"tim", "sanchez", 34, 175.5, "bla", "blub", "tim@tim.com"},
{"alice", "smith", 42, 160.0, "la", "bub", "alice@sdf.com"},
...
};

Object[][] array1 = {
{"john", "sdfs", 34, 15.5, "a", "bl", "john@tim.com"},
{"joe", "smith", 42, 16.0, "a", "bub", "joe@sdddf.com"},
...
};

...

Object[][] arrayi = ...
Run Code Online (Sandbox Code Playgroud)

我用for循环生成这些数组:

 for (int i = 0; i < filter.length; i++) {
  MyClass c = new MyClass(filter[i]);
  //data = c.getData();
 }
Run Code Online (Sandbox Code Playgroud)

其中"filter"是另一个数组,其中填充了告诉"MyClass"如何填充数组的信息."getData()"返回i个数组中的一个.

现在我只需要将一切都放在一个大的二维数组中.即:

Object[][] arrayComplete = {
{"tim", "sanchez", 34, 175.5, "bla", "blub", "tim@tim.com"},
{"alice", "smith", 42, 160.0, "la", "bub", "alice@sdf.com"},
...
{"john", "sdfs", 34, 15.5, "a", "bl", "john@tim.com"},
{"joe", "smith", 42, 16.0, "a", "bub", "joe@sdddf.com"},
...
...
};
Run Code Online (Sandbox Code Playgroud)

最后,我需要一个2D数组来提供我的Swing TableModel.

有关如何实现这一点的任何想法?现在这让我大吃一惊.

Bil*_*l K 7

如果你开始考虑对象和集合而不是数组,那么你的头部流量会大大减少.说真的,使用像这样的数组变得非常复杂!这就是为什么发明OO编程的原因.

从最简单的对象开始:用户.看起来用户包含姓名,年龄,其他内容和电子邮件地址.

现在是你有一个用户集合吗?管理琐碎!

然后,您必须将该组用户映射到swing表模型.一个简单的toArray()方法可以返回你想要的一维数组.从那些创建一个二维数组应该很容易,等等(虽然我不确定二维数组是否可行)

另外,创建一个Person构造函数,它接受Object [],这样你就不必改变对象的创建方式 - 以你的方式创建它们实际上非常有效.

如果在此之后它仍然令人困惑,我们应该弄清楚为什么要用数组喂养你的表模型 - 这真的有必要吗?通常,对象集合将更容易管理.

(对不起多次编辑.不知怎的,我在点击保存后总会注意到更多......)