public void teste(){
Data d = new Data();
SimpleDateFormat nascimento = new SimpleDateFormat(“ddmmyyyy”);
int a = Integer.parseInt(nascimento.format(nascimento));
System.out.println(nascimento);
o metodo ta assim mas ai da erro quando eu tento compilar
o erro é esse
java.lang.IllegalArgumentException: Cannot format given Object as a Date
at java.text.DateFormat.format(DateFormat.java:279)
public void teste(){
Data d = new Data();
SimpleDateFormat nascimento = new SimpleDateFormat(“ddmmyyyy”);
int a = Integer.parseInt(nascimento.format(nascimento));
System.out.println(nascimento);
public void teste(){
Data d = new Data();
DateFormat nascimento = new SimpleDateFormat(“ddmmyyyy”);
int a = Integer.parseInt(nascimento.format(d));
System.out.println("" + a);
e o erro não dá qdo vc tenta compilar, dá qdo vc tenta executar !
como vc escreveu ali ele nao conhece a clase DateFormat e nao compila se colocar o Simple na frente da esse erro.
java.lang.IllegalArgumentException: Cannot format given Object as a Date
at java.text.DateFormat.format(DateFormat.java:279)
at java.text.Format.format(Format.java:133)
at Funcionario.teste(Funcionario.java:67)
public boolean setMes(int m){
if (m < 12 )
{mes = m;
return true;}
else{mes = 1;
return false;}
}
public boolean setAno(int a){
if (a > 1920 )
{ano = a;
return true;}
else{ano = 2008;
return false;}
}
// constrói o objeto Data com a data atual
public Data(){
GregorianCalendar c = new GregorianCalendar();
dia = c.get(GregorianCalendar.DAY_OF_MONTH);
mes = c.get(GregorianCalendar.MONTH)+1;
ano = c.get(GregorianCalendar.YEAR);
}
public int getDataPadrao(){
return dia + mes + ano;
}
public int getDataInvertida(){
return ano * 10000 + mes * 100 + dia;
}
public void leDataInvertida(){
Teclado t = new Teclado();
int data = t.leInt("Informe a data no formato inteiro AAAAMMDD: ");
setAno(data / 10000);
setMes(data % 10000 / 100);
setDia(data % 100);
}
}
velho so que a classe data ja peguei pronta e nao posso mudar ela entendeu?
repare nos métodos get do calendar (que se não me engano é superclasse de gregorianCalendar). Usando isso vc nem precisaria ficar fazendo código na mão para saber se o ano é bissexto, entre outras coisas.