Boa noite a todos;
Estou com um problema e se postei esse tópico após muito pesquisar.
Vejam, por favor, o código abaixo:
import java.awt.Color;
import java.util.Calendar;
import java.util.Date;
import javax.swing.JOptionPane;
public class idade {
public idade(Date data){
System.out.println(calcIdade(data));
}
public int calcIdade(Date dataNasc){
Date hoje = new Date();
Calendar cal = Calendar.getInstance();
cal.setTime(hoje);
int day1 = cal.get(Calendar.DAY_OF_YEAR);
int ano1 = cal.get(Calendar.YEAR);
cal.setTime(dataNasc);
int day2 = cal.get(Calendar.DAY_OF_YEAR);
int ano2 = cal.get(Calendar.YEAR);
int nAno = ano1 - ano2;
if(day1 < day2)
nAno--;
return nAno;
}
public static void main(String[] args){
int year;
year = Integer.parseInt (
JOptionPane.showInputDialog("Qual seu ano de nascimento (Ex.: 1981)?") );
int month;
month = Integer.parseInt (
JOptionPane.showInputDialog("Qual seu mês de nascimento (Ex.: 2, para fevereiro)?") );
int day;
day = Integer.parseInt (
JOptionPane.showInputDialog("Qual seu dia de nascimento (Ex.: 16)?") );
Calendar c = Calendar.getInstance();
c.set(year, month, day);
new idade(c.getTime());
if(nAno > 65){
JOptionPane.showMessageDialog(null, "Você tem direito a passagens gratuitas.");
}
else {
JOptionPane.showMessageDialog(null, “Você não tem direito a passagens gratuitas.”);
}
}
}
Trata-se de um programa em que a partir da idade da pessoa, sabemos se ela pode ou não ter passe-livre nos ônibus.
Os mais experientes notarão que o programa acima não está funcionando. Não funciona porque eu quero usar a variável “nAno” em dois métodos. Pelo o que eu li, não tenho como ter uma “variável global” em Java. O que eu posso fazer para que a verificação da idade funcione?
Desde já, obrigado.
