Máscara

Como faço para inserir uma máscara no seguinte código:
x = Integer.parseInt(JOptionPane.showInputDialog(“Valor”);
na verdade gostaria de não permitir caracteres que não sejam números

Digitar apenas números:


public boolean validaCampo(String caract){
      boolean aux = true;
      String regex = "[+-?][0-9]*[.,]?[0-9]*";
     
      if(!Pattern.matches(regex, caract)){
         aux = false;
      }         
      return aux;

ahh ía me esquecendo do import

import java.util.regex.*;

[quote=“Christielen”]Digitar apenas números:


public boolean validaCampo(String caract){
      boolean aux = true;
      String regex = "[+-?][0-9]*[.,]?[0-9]*";
     
      if(!Pattern.matches(regex, caract)){
         aux = false;
      }         
      return aux;

ahh ía me esquecendo do import

import java.util.regex.*; [/quote]

não entendi direito esse seu código cara, vc podeira explicar o que é: [±?][0-9][.,]?[0-9] ?

Bom, eu faria um pouco diferente, descia o nível indo pra tabela ASCII e como os números estão entre 48 e 57 na tabela, não deixaria passar nenhum valor maior nem menor que esses números.

[±?][0-9][.,]?[0-9] : aceita somente número de 0 a 9, positivos ou negativos…

Ex: 54896… ok!