Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/351.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在java中添加图书列表的最佳方法是什么_Java_Multidimensional Array - Fatal编程技术网

在java中添加图书列表的最佳方法是什么

在java中添加图书列表的最佳方法是什么,java,multidimensional-array,Java,Multidimensional Array,我正在构建一个简单的程序,在这个程序中,我在Jtable中预先填写了书籍的名称、作者、价格,以便在列表中显示它们 最初我创建了2d阵列,它工作正常 但现在我想让我的程序在列表中动态添加或删除 但数组不能这样做,所以这是最好的方法。举个例子就好了你可以用泛型。 如果您的图书信息大小不变,则可以创建一个数组的ArrayList。下面是一个简单的String数组示例,如果这是您使用的容器,请将其更改为JTable private ArrayList<String[]> books = ne

我正在构建一个简单的程序,在这个程序中,我在Jtable中预先填写了书籍的名称、作者、价格,以便在列表中显示它们

最初我创建了2d阵列,它工作正常

但现在我想让我的程序在列表中动态添加或删除

但数组不能这样做,所以这是最好的方法。举个例子就好了

你可以用泛型。 如果您的图书信息大小不变,则可以创建一个数组的
ArrayList
。下面是一个简单的
String
数组示例,如果这是您使用的容器,请将其更改为
JTable

private ArrayList<String[]> books = new ArrayList<String[]>(); 
你可以使用泛型。 如果您的图书信息大小不变,则可以创建一个数组的
ArrayList
。下面是一个简单的
String
数组示例,如果这是您使用的容器,请将其更改为
JTable

private ArrayList<String[]> books = new ArrayList<String[]>(); 
在Jtable中

使用DefaultTableModel。可以使用addRow(…)方法动态添加行

或者,如果您正在创建要在JTable中显示的“Book”项目,则可以使用

在Jtable中

使用DefaultTableModel。可以使用addRow(…)方法动态添加行


或者,如果您正在创建要在JTable中显示的“Book”项目,您可以亲自使用。

我建议您定义自己的接口实现(可能通过子类化)。然后,正如Andrezj所建议的,您可以在内部使用ArrayList来保存数据。请参见关于使用
JTable
。这需要更多的工作,但它可以让您更好地控制数据


如果您不想这样做,那么可以使用,这允许您这样做,但它不是类型安全的,如果您使用
Vector
s提供数据,则它不是线程安全的。事实上,我不确定以
向量
的形式提供一行,然后在将其添加到表中后更改该
向量
时会发生什么。如果
DefaultTableModel
创建了自己的(deep?)副本,那么这可能不是问题,但我不知道它是否做到了这一点。也许有人可以亲自评论

,我建议您定义自己的接口实现(可能通过子类化)。然后,正如Andrezj所建议的,您可以在内部使用ArrayList来保存数据。请参见关于使用
JTable
。这需要更多的工作,但它可以让您更好地控制数据


如果您不想这样做,那么可以使用,这允许您这样做,但它不是类型安全的,如果您使用
Vector
s提供数据,则它不是线程安全的。事实上,我不确定以
向量
的形式提供一行,然后在将其添加到表中后更改该
向量
时会发生什么。如果
DefaultTableModel
创建了自己的(deep?)副本,那么这可能不是问题,但我不知道它是否做到了这一点。也许有人可以发表评论

我怎样才能添加像JTable jt=new JTable(书籍、表格字段)这样的简短语句-------它给出错误除非创建自定义模型,否则无法将ArrayList添加到JTable。这就是为什么建议使用DefaultTableModel,因为它支持的向量与ArrayList基本相同-------它给出错误除非创建自定义模型,否则无法将ArrayList添加到JTable。这就是为什么会建议使用DefaultTableModel,因为它支持的向量与ArrayList基本相同。是否有任何示例说明如何使用ArrayList实现abstractTablemodel。我是java新手,所以不知道如何使用dosorry buddy,但我感到困惑。实际上,我有一个单独的类,名为Book,其属性是name、author、price。如何将该类与Jtable模型链接。在该示例中,我不知道有一些小部件\w yetWidget只是本文使用的示例类。只要在你看到它的地方用你的Book类替换它:)文章的第二页有你需要的所有信息。有没有任何例子说明我如何用arrayList实现abstractTablemodel。我是java新手,所以不知道如何使用dosorry buddy,但我感到困惑。实际上,我有一个单独的类,名为Book,其属性是name、author、price。如何将该类与Jtable模型链接。在该示例中,我不知道有一些小部件\w yetWidget只是本文使用的示例类。只要在你看到它的地方用你的Book类替换它:)文章的第二页有你需要的所有信息。