Tratamento de Datas

Porque este código não compila?

System.out.println("\nData do Cadastro: "); SimpleDateFormat format = new SimpleDateFormat("yy/MM/dddd"); String data = entrada.nextLine(); novoFunc.setDataEntrada(format.parse(data));

A mina variável dataEntrada é do tipo Date, converti a String data…

Mas mesmo assim não compila.

Alguém pode mostrar onde está o erro e como corrigir?

Obrigado!

acho que esta errado essa linha:

SimpleDateFormat format = new SimpleDateFormat("yy/MM/dddd");

o correto seria

SimpleDateFormat format = new SimpleDateFormat("dd/MM/yyyy");

The method setDataEntrada(Date) in the type Funcionario is not applicable for the arguments (Date)

Tem certeza que o seu objeto espera um java.util.Date ? :slight_smile:
De preferência, poste a classe Funcionario e verifique o tipo que ela espera em “dataEntrada”.

BtAquino, qual valor a String data assume quando vc roda o entrada.nextline() ??? Já debugou o código para ver esse valor? Se puder informar no post ajuda bastante

Abraços

mveloso

Segundo o Debug, está recebendo um String [], porém é pq eu não chego a informar o valor, já que não compila.

Trecho da classe funcionário:

[code]public class Funcionario {

private Date dataEntrada;



public Date getDataEntrada(){
	return this.dataEntrada;
}

public void setDataEntrada(Date dataEntrada){
	this.dataEntrada = dataEntrada;
}[/code]

A principio, não vejo erros em seu código, ao menos, nada que seja em tempo de compilação.
Não vi o import da sua data, confirme se é java.util.Date na sua classe Funcionario, me parece ser um java.sql.Date.

Puts…

Realmente o problema estava no import, estava importando a classe errada. :?

java.sql.Date serviria para qual caso?

Já aproveitando o tópico, se eu quiser que dataEntrada receba a data do atual do Windows, como ficaria?

Desde já
Obrigado!

[quote=BtAquino]Puts…

Realmente o problema estava no import, estava importando a classe errada. :?

java.sql.Date serviria para qual caso?

Já aproveitando o tópico, se eu quiser que dataEntrada receba a data do atual do Windows, como ficaria?

Desde já
Obrigado!
[/quote]

Data atual é simplesmente new Date() e o java.sql.Date é retornado em uma consulta JDBC, por exemplo.