删除重复项java gui

时间:2014-02-17 00:12:35

标签: java swing user-interface jtable jcombobox

我只想在这里为组合框添加一些东西

事实上,我正在添加的一些项目在整个过程中重复出现。我可以想到避免向框中添加重复项的唯一方法是使用1循环将所有项添加到2个数组列表,然后再使用另外2个循环遍历两个列表以查看是否有任何项重复(我没有实际上已经尝试过了,所以我的逻辑可能是错的。

有人可以提出快速简便的解决方法吗?

2 个答案:

答案 0 :(得分:3)

  1. 创建Vector<TableItem>
  2. 对于表格中选择的每个元素,请检查Vector.contains(tableItem)
    • 如果有,不要做任何事。
    • 如果不存在,请添加。
  3. 使用Vector<TableItem>建立new DefaultComboBoxModel
  4. 致电JComboBox.setModel(ComboBoxModel)

答案 1 :(得分:1)

我建议将从JTable获取的所有数据添加到String [],然后检查此代码:

String[] nonduplicate(String[] stData) {

    String[] returnString;
    ArrayList<Stringresult=new ArrayList<String>();
    ArrayList list;

    list = new ArrayList( Arrays.asList( stData) );  

    HashSet set = new HashSet( (Collection)list );
    Iterator iterator = set.iterator(); 
    while ( iterator.hasNext() ) {
        result.add((String) iterator.next()) ;
    }
    returnString=new String[result.size()];
    returnString=result.toArray(returnString);
    return returnString;
}

然后,您必须将此String[]添加到组合框中。

相关问题