Java实现JtextField只能输入数字

最近在做一个学生管理系统项目的时候,在添加学生信息的时候需要输入年龄,那么就需要让 JTextField 只能输入数字了,找了很多方法都不能满意,大多都是按提交按钮才能告诉用户“嘿,你输错了!”最后还是选择了键值监听的办法。实现的代码如下

JTextField textField = new JTextField();
textField.addKeyListener(new KeyAdapter() {
    public void keyTyped(KeyEvent e){
    int keyChar = e.getKeyChar();//读取输入的键值
    if(keyChar>=KeyEvent.VK_0&&keyChar<=KeyEvent.VK_9){//判断输入的键值是否在大于等于0并且小于等于9
            //如果是,什么都不操作,相当于放行吧
    }else{
        e.consume();//这句很重要,这句的作用是屏蔽输入的键值。
    }
    }
});

这个方法也适用于其他的输入框限制

添加新评论