nakrak
Outubro 29, 2009, 5:36pm
#1
tenho o seguinte codigo
aux=cCpf.getText();
if(aux.equals("") || aux.trim().length()!=11){
mensagem+="Coloque um Cpf válido \n ";
erro=true;
}else{
cpf = Integer.parseInt(aux);
}
nao vejo onde ha algum erro mas me é retornado
Exception in thread “AWT-EventQueue-0” java.lang.NumberFormatException: For input string: “45184597845”
o inteiro cpf nao consegue converter a variavel aux
Um CPF não cabe em um int. Você precisa usar um long, e usar Long.parseLong().
nakrak
Outubro 29, 2009, 5:47pm
#3
Sério!!!
Quantos algarismos cabem nesses dois tipos de dado?
hahahhahha
valew
Fiquei de cara agora :? :shock: :lol: :lol:
[quote=nakrak]Sério!!!
Quantos algarismos cabem nesses dois tipos de dado?
[/quote]
http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Integer.html#MAX_VALUE
Um int contém valores de -2147483648 a +2147483647
Um long contém valores de -9223372036854775808 a +9223372036854775807
nakrak
Outubro 29, 2009, 6:03pm
#6
Interessante, obrigado a vcs que reponderam
Apenas mais uma pergunta
E se eu precisar de numeros maiores???
renamed
Outubro 29, 2009, 6:20pm
#7
Uma dica, você não deve representar o cpf como numerico pois ele pode começar com o valor 0.
nakrak
Outubro 29, 2009, 11:44pm
#9
[quote=Oliveira.caio]Uma dica, você não deve representar o cpf como numerico pois ele pode começar com o valor 0.
[/quote]
Então…Um Inteiro ou float que seja 0123 é igual 123?
thingol
Outubro 30, 2009, 6:46am
#10
Parece uma história que ouvi.
Meus funcionários são muito bem pagos. Eles ganham um salário de 7 dígitos.
7 dígitos? Até eu quero ganhar um salário desses. Quanto você paga para eles?
00480,00 por mês…
Talvez seu sobrinho da segunda série saiba responder essa pergunta… Lembre-se a variável inteira guarda um valor numérico. E para números, o que significam zeros a esquerda?
Só cuidado com a pegadinha:
int x = 043;
O literal 043 não é o número 43 decimal, e sim, o número 43 octal. Isso vale 35 decimal.
Se o 043 veio de um parseInt, ou parseLong, sem problemas, será 43 mesmo.