KeyListener-希望只输入数字,但它让我输入一个字母

时间:2015-11-26 16:04:53

标签: java swing

我使用此代码来限制数字的输入,但如果我按下的第一个键是一个字母,代码让我输入那个字母,只有一次,然后当我擦除它我不能再输入字母,什么代码有问题吗?我想只输入数字。

amount.addKeyListener(new KeyAdapter() {
    public void keyTyped(KeyEvent e) {
        char c = e.getKeyChar();
        if (!(Character.isDigit(c)))
                e.consume();
        }

}); 

我添加了两个右括号,结果仍然相同,这里是一个 video

1 个答案:

答案 0 :(得分:0)

试试这个:

try{
        Double.parseDouble(c);

        //Code here for TRUE case (Is Number)

}catch(NumberFormatException e1){

        //Code here for FALSE case (Is NOT Number)
}