Java Swing 中JTextFiled监听问题

1.目标:获取JTextFiled中的文本,并且与HashMap中的value值判断是否相同。
2.过程:对JTextFiled实现监听,当输入大王时,在控制台输出时大、大王,分两部分输出。这样的话就比较不了,不知道怎么获取最后的大王然后去比较,请问应该怎么改比较好?
Map<String, Person> hm = new HashMap<String,Person>();其中Person是一个类,里面包含姓名以及各种get方法等信息,这段代码时测试姓名的。然后我已经将数据库的信息存放在HashMap中了。
public void insertUpdate(DocumentEvent e)

{
    String str = jtf_name.getText();
    System.out.println(str);
    }

这是在HashMap比较的代码:
public void insertUpdate(DocumentEvent e)

{
    String str = jtf_name.getText();
    for (String key:hm.keySet())
    {
        //System.out.println(hm.get(key).getName());
        if (str == hm.get(key).getName())
        {
            JOptionPane.showMessageDialog(contentPane, "姓名不能重复", 
                    "Error", JOptionPane.ERROR_MESSAGE);
            break;
        }
    }    
}
阅读 2.5k
1 个回答

这个建议在JTextFiled失去焦点事件中检测,

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题