Boas pessoal,
Estou a receber o sgt erro :
java.lang.NumberFormatException: For input string: "25000000000"
é um numero que tenho num campo de texto. ele so me dá este erro quando o numero tem mais de 9 digitos.
Se eu reduzir o numero 25000000000 para 250000000 ele ja funciona bem e nao me da erro.
O que devo fazer para ultrapassar este problema ?
eu nao sei… mas isso nao pode estar ocorrendo devido ao tipo de seu atributo?
Você poderia ter pesquisado um pouquinho no fórum e acharia isto
Controlando um JTextField
Ai resolveria o seu problema, e verifique até quantos dígitos você pode ter e veja o tipo mais adequado ao seu problema.
-
Depende. Se precisares limitar o tamanho do JTextField, a resposta anterior é uma das melhores possíveis.
Mas se você precisa de um número na casa dos bilhões, veja se a variável que recebe esse parse não está sendo “estourada”. A má escolha de variáveis pode ocasionar falhas em seu sistema que podem ser somente vistos em produção.
Se estiveres usando int, vais ter problemas mesmo.
Para mais detalhes sobre essas variáveis:
http://java.sun.com/docs/books/tutorial/java/nutsandbolts/datatypes.html
Até!
O problema ocorre devido ao tipo de variável mesmo, o valor que vc escolheu é maior que o valor permitido para um inteiro.
Use long ou double que vc não terá este problema.
Outra opção será limitar o comprimento máximo do campo para que nunca se tenha um número com mais dígitos que o tipo suporta.