Quando for mostrar os dados na tela basta fazer cliente.idade
G
Getulio_Miranda2
só tem um problema você vai considerar que o dia do aniversario ainda nao chegou?
podemos estar em 2017 se eu sou de 1991 pela suas contas eu tenho 26 mas meu aniversario é 05/07 logo tenho 25
Solucao aceita
gtalkSP
Obrigado @campelo.m funcionou legal, nem sabia que dava pra fazer algo assim rsrs.
Agora vou dar uma melhorada conforme o @Getulio_Miranda2 passou o problema da data.
Obrigado.
gtalkSP
Aqui o resultado e funcionando:
publicIntegergetIdade(){SimpleDateFormatsdfAno=newSimpleDateFormat("yyyy");SimpleDateFormatsdfMes=newSimpleDateFormat("MM");SimpleDateFormatsdfDia=newSimpleDateFormat("dd");GregorianCalendarnow=newGregorianCalendar();// Pegando dia , mês e ano e atribuindo nas variaveisintdiaNow=now.get(Calendar.DAY_OF_MONTH);intmesNow=now.get(Calendar.MONTH)+1;intanoNow=now.get(Calendar.YEAR);// Fazendo parse de date para int (dia, mês e ano)intanoNasc=Integer.parseInt(sdfAno.format(this.getDtNasc()));intmesNasc=Integer.parseInt(sdfMes.format(this.getDtNasc()));intdiaNasc=Integer.parseInt(sdfDia.format(this.getDtNasc()));// variavel que receberá o calculo.intidadeCalculada;//Fazendo as comparações e calculandoif(mesNasc<mesNow||(mesNasc==mesNow&&diaNasc<=diaNow)){idadeCalculada=anoNow-anoNasc;idade=idadeCalculada;}else{idadeCalculada=(anoNow-anoNasc)-1;idade=idadeCalculada;}returnidade;}