Java 在运行时更新JList

Java 在运行时更新JList,java,swing,arraylist,jlist,Java,Swing,Arraylist,Jlist,当程序运行时,如何更新JList?我正在从另一个类导入一个ArrayList,并将其放入列表中。当用户向数组列表中添加一些内容时,我会将其显示在屏幕上的列表中。将数组列表包装成某种列表模型,并使用JList\setModel 有关更多详细信息,请参阅 您可以使用DefaultListModel,无论何时更新ArrayList,您都需要更新DefaultListModel,但根据需要使用、或之类的工具 这将自动通知JList对车型所做的更改 已更新 更复杂的方法可能是使用代理模式,通过创建Arra

当程序运行时,如何更新
JList
?我正在从另一个类导入一个
ArrayList
,并将其放入列表中。当用户向数组列表中添加一些内容时,我会将其显示在屏幕上的列表中。

数组列表
包装成某种
列表模型
,并使用
JList\setModel

有关更多详细信息,请参阅

您可以使用
DefaultListModel
,无论何时更新
ArrayList
,您都需要更新
DefaultListModel
,但根据需要使用、或之类的工具

这将自动通知
JList
对车型所做的更改

已更新

更复杂的方法可能是使用代理模式,通过创建
ArrayList
代理,该代理提供有关何时更改的信息,这些信息可以反映在模型中。这假设从导入
ArrayList
的类向类请求
ArrayList
的实例


通过这种方式,您可以监视
添加
设置
删除
方法,并自动更改
列表模型

数组列表
包装成某种
列表模型
,并使用
JList#setModel

有关更多详细信息,请参阅

您可以使用
DefaultListModel
,无论何时更新
ArrayList
,您都需要更新
DefaultListModel
,但根据需要使用、或之类的工具

这将自动通知
JList
对车型所做的更改

已更新

更复杂的方法可能是使用代理模式,通过创建
ArrayList
代理,该代理提供有关何时更改的信息,这些信息可以反映在模型中。这假设从导入
ArrayList
的类向类请求
ArrayList
的实例


通过这种方式,您可以监视
添加
设置
删除
方法,并自动更改
列表模型

数组列表
包装成某种
列表模型
,并使用
JList#setModel

有关更多详细信息,请参阅

您可以使用
DefaultListModel
,无论何时更新
ArrayList
,您都需要更新
DefaultListModel
,但根据需要使用、或之类的工具

这将自动通知
JList
对车型所做的更改

已更新

更复杂的方法可能是使用代理模式,通过创建
ArrayList
代理,该代理提供有关何时更改的信息,这些信息可以反映在模型中。这假设从导入
ArrayList
的类向类请求
ArrayList
的实例


通过这种方式,您可以监视
添加
设置
删除
方法,并自动更改
列表模型

数组列表
包装成某种
列表模型
,并使用
JList#setModel

有关更多详细信息,请参阅

您可以使用
DefaultListModel
,无论何时更新
ArrayList
,您都需要更新
DefaultListModel
,但根据需要使用、或之类的工具

这将自动通知
JList
对车型所做的更改

已更新

更复杂的方法可能是使用代理模式,通过创建
ArrayList
代理,该代理提供有关何时更改的信息,这些信息可以反映在模型中。这假设从导入
ArrayList
的类向类请求
ArrayList
的实例


通过这种方式,您可以监视
添加
设置
删除
方法,并自动更改
列表模型

您甚至不需要使用
设置模型
,您可以只更改模型。@SimonAndréForsberg它将取决于您是否要从原始列表中删除元素。这还取决于您是否要合并这两个列表。就个人而言,创建新列表的速度更快。但是没有足够的信息来表示一种方式或另一种方式……”“但是没有足够的信息来表示一种方式或另一种方式……”当用户向数组列表中添加某个内容时,它将显示在屏幕上的列表中。“这样看起来很清楚。不知道这是不是正确的口吻我在想也许有一种方法,比如。。(最好在这里)@AndrewThompson这可能更多的是因为你需要半个睡眠。你甚至不需要使用
setModel
,你只需要更改模型即可。@simonardéForsberg这取决于你是否想从原始列表中删除元素。这还取决于您是否要合并这两个列表。就个人而言,创建新列表的速度更快。但是没有足够的信息来表示一种方式或另一种方式……”“但是没有足够的信息来表示一种方式或另一种方式……”当用户向数组列表中添加某个内容时,它将显示在屏幕上的列表中。“这样看起来很清楚。不知道这是不是正确的口吻我在想也许有一种方法,比如。。(最好是在这里)@AndrewThompson这可能更多的是因为你是一半