限制用户输入重复的IDitem

时间:2015-04-18 19:35:23

标签: java swing

所以我有一个数据结构项目分配,我需要创建单链表并实现swing +异常处理概念。 我创建了一个超级市场列表项,但我遇到了限制用户输入重复ID项的问题,当用户输入重复ID时,我希望有一条消息"不允许重复的ID" 这是我在"框架中的代码"类

if(B==b11)
        try
    {
         al1.AddItem(Integer.parseInt(t1.getText()),t2.getText(),Integer.parseInt(t4.getText()),Double.parseDouble(t5.getText()));
    JOptionPane.showMessageDialog(null,"Added");
    }
    catch(Exception x){
        JOptionPane.showMessageDialog(panel,"Wrong input ,please renter the fields ", "Warning",
           JOptionPane.WARNING_MESSAGE);

    };

这是我在" Node进程中的代码"类

    public void AddItem(int ID, String Name, int Q, double P)
        {
    if(head==null)

    head=tail=new  project6(ID,Name,Q,P,head);
        else
        {
              project6 pred, tmp;
            for(pred = head, tmp = head.next; tmp != null && ID > tmp.ProductID; pred = pred.next, tmp = tmp.next);
            if(tmp != null)
            pred.next = new   project6(ID,Name,Q,P,tmp);
            else
            tail.next = tail = new   project6(ID,Name,Q,P, null);


        }
}

1 个答案:

答案 0 :(得分:1)

如果要向List添加元素,可以使用contains()方法;如果没有,您应该编写一个traverses Node数据结构的可比方法。

或者,您可能需要考虑向Set添加元素,这会排除重复项。 TreeSet可能是一个很好的具体实施,因为它仍然是有序的。如果“set已包含元素”,add()实现将返回false。您可以使用该信息来引发适当的例外。