gpt4 book ai didi

java - 如何将列表中的特定项目添加到另一个列表?

转载 作者:行者123 更新时间:2023-12-01 12:02:31 26 4
gpt4 key购买 nike

我的程序有问题。由于某种原因,我无法将一个列表中的项目转移到另一个列表中。

defaultListModel model1 = new DefaultListModel();
DefaultListModel model2 = new DefaultListModel();
//check an item is selected from listbox
if (lstlibrary.getSelectedIndex() != -1) {
int position;
position = array1.indexOf(lstlibrary.getSelectedValue());
array2.add(array1.get(position));
array1.remove(position);

//move array to listbox model
for (String value1 : array1) {
model1.addElement(value1);
}
lstlibrary.setModel(model1);

for (String value2 : array2) {
model1.addElement(value2);
}
lstlibrary.setModel(model2);

这是我的老师告诉我要做的,但我无法让它发挥作用。我已经尝试了所有方法,但我不知道该怎么做,我对这一切都很陌生,所以如果有人可以帮助我,那就太好了!

最佳答案

问题是您尝试将 model2 设置为您读取所选项目的同一列表。您必须有两个列表,例如 lSTLibrary1 和 lSTLibrary2并尝试将项目从 lSTLibrary1 移动到 lSTLibrary2所以改变最后几行

 for (String value2 : array2) {
model1.addElement(value2);
}
lstlibrary.setModel(model2);

到此

for (String value2 : array2) {
model2.addElement(value2);
}
lstplaylist.setModel(model2);

如果第二个列表对象名称是lstplaylist同样在第二个 for 循环中,您必须使用 model2 而不是 model1

=================================

更新

尝试改变这些函数来解决问题

对于 btnToPlaylistMouseClicked() 将最后两个 for 循环更改为此

// refreshing lstlibrary to remove selected name
for (String value1 : array1) {
model1.addElement(value1);// adding elements to model1
}
lstlibrary.setModel(model1);// using model1 for lstlibrary


//refreshing lstplaylist to add new selected name
for (String value2 : array2) {
model2.addElement(value2);// adding elements to model2
}
lstplaylist.setModel(model2);// using model2 for lstplaylist

也将这些 for 循环用于 btnRemoveMouseClicked()。你那里也有问题。

关于java - 如何将列表中的特定项目添加到另一个列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27892204/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com