java - 在 Java 中将 DefaultListModel 转换为 List
问题描述
我正在制作一个包含 JList 的 Swing 应用程序,并且列表中的所有对象都存储在 DefaultListModel 中。同时我需要将列表传递给一个接收列表作为输入的方法。如何将 DefaultListModel 转换为 List ?
这是我得到的错误:
The method computeSpending(List<Subscription>) in the type SubscriptionSpending is not applicable for the arguments (DefaultListModel<Subscription>)
解决方案
如何将 DefaultListModel 转换为 List ?
Arrays.asList(defaultListModel.toArray());
描述:
DefaultListModel
不是 的子类List
。因此,不能直接将其作为List
参数传递。相反,您可以将参数类型更改为ListModel<E>
. 如:
computeSpending(ListModel<Subscription>)
此外,如果您必须需要将DefaultListModel<Subscription>
传入 a List
,您可以使用:
List<Subscription> asList = Arrays.asList(defaultListModel.toArray());
推荐阅读
- c++ - 为什么我不能 std::bit_cast 字符串文字的内容?
- c++ - 如何在 C++ 中重载“删除”运算符以打印使用它的文件的行和名称?
- excel - 如何调整左侧和右侧之间的数据大小以使它们相同?
- java - 我们如何将数据库驱动程序保留在工作之外
- python - 使用 pyinstaller 将我的程序变成 exe 后,selenium 停止工作
- c# - 使用 Azure.Messaging.ServiceBus.Administration 创建 ServiceBus 队列时出错
- python - 关于读取html文件时某些字符串飞起来的原因
- node.js - 获取 ForbiddenError:带有 multer 的无效 csrf 令牌在本地添加到图像上传路由器
- mongodb - 在 mongodb 中搜索拼写错误的单词 .net core 3
- c - 在C中将结构实例转换为另一种类型的正确方法是什么