如何在Java Swing应用程序中防止JList中的重复值?

如何在Java Swing应用程序中防止JList中的重复值?,java,swing,netbeans,jlist,Java,Swing,Netbeans,Jlist,我正在使用Netbeans IDE。是否有任何属性可用于防止JList中的条目重复 任何建议(示例链接)都将不胜感激。是的,您可以使用LinkedHashSet消除重复条目并保持元素的顺序。您需要在为JList创建模型之前执行此操作,然后从新创建的LinkedHashSet 此列表模型可以实现以下功能: import java.util.Collection; import java.util.LinkedHashSet; import javax.swing.DefaultListModel

我正在使用Netbeans IDE。是否有任何属性可用于防止JList中的条目重复


任何建议(示例链接)都将不胜感激。

是的,您可以使用
LinkedHashSet
消除重复条目并保持元素的顺序。您需要在为
JList
创建模型之前执行此操作,然后从新创建的
LinkedHashSet

此列表模型可以实现以下功能:

import java.util.Collection;
import java.util.LinkedHashSet;

import javax.swing.DefaultListModel;

public class DistinctListModel<E> extends DefaultListModel<E> {
    public DistinctListModel(Collection<E> data) {
        for (E e: new LinkedHashSet<E>(data)) {
            addElement(e);
        }
    }
}
import java.util.Collection;
导入java.util.LinkedHashSet;
导入javax.swing.DefaultListModel;
公共类DistinctListModel扩展了DefaultListModel{
公共DistinctListModel(收集数据){
用于(E:新的LinkedHashSet(数据)){
增编(e);
}
}
}

非常感谢Krzysztof Cichoki