比方说 一个 JList list , Jtextfield text ,save button 。  
       我在 text 中输入 1 ,点击save button ,list 显示 1 ,text输入2 ,list显示2 。    这个 输入的 写好了。。   可是 我想达到 text输入1, list 显示1 以后 , 我再 在text 中输入1 的时候 ,list 提示 不能有重复数据 ! 这个该如何实现啊 !

解决方案 »

  1.   

    应该就是这样了 我是新手 哪里写的不对还请说明 呵呵!
    ==========================
    package test;import java.awt.BorderLayout;
    import java.awt.Dimension;import javax.swing.JFrame;
    import javax.swing.JPanel;
    import javax.swing.JList;
    import java.awt.Rectangle;
    import javax.swing.BorderFactory;
    import java.awt.Color;
    import javax.swing.JTextField;
    import javax.swing.JButton;
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    import java.util.Vector;public class Frame3 extends JFrame {
        JPanel contentPane;
        JList lst = new JList();
        JTextField txtinput = new JTextField();
        JButton btnok = new JButton();
        Vector vector=new Vector();
        public Frame3() {
            try {
                setDefaultCloseOperation(EXIT_ON_CLOSE);
                jbInit();
            } catch (Exception exception) {
                exception.printStackTrace();
            }
        }    /**
         * Component initialization.
         *
         * @throws java.lang.Exception
         */
        private void jbInit() throws Exception {
            contentPane = (JPanel) getContentPane();
            contentPane.setLayout(null);
            setSize(new Dimension(506, 441));
            setTitle("Frame Title");
            lst.setBorder(BorderFactory.createLineBorder(Color.black));
            lst.setBounds(new Rectangle(32, 48, 180, 302));
            txtinput.setBounds(new Rectangle(245, 198, 157, 33));
            btnok.setBounds(new Rectangle(245, 307, 157, 23));
            btnok.setText("添加");
            btnok.addActionListener(new Frame3_btnok_actionAdapter(this));
            contentPane.add(lst);
            contentPane.add(txtinput);
            contentPane.add(btnok);
        }    public void btnok_actionPerformed(ActionEvent e) {
            if (this.txtinput.getText().equals(""))
            {
                return;
            }
            
            if (vector.contains(txtinput.getText()))
            {
                javax.swing.JOptionPane.showMessageDialog(this,"不能添加相同的内容!");
                return;
            }
            vector.add(txtinput.getText());
            lst.setListData(vector);
            
        }
        
        public static void main(String[] args)
        {
            new Frame3().setVisible(true);
        }
    }
    class Frame3_btnok_actionAdapter implements ActionListener {
        private Frame3 adaptee;
        Frame3_btnok_actionAdapter(Frame3 adaptee) {
            this.adaptee = adaptee;
        }    public void actionPerformed(ActionEvent e) {
            adaptee.btnok_actionPerformed(e);
        }
    }
      

  2.   

    改写List的Model,对插入数据进行唯一性检查