Olá Pessoal!
Por favor me me ajudem nesse código preciso fazer esse código e não estou conseguindo, em Relação a Classe Filtro tenho que fazer esse código em com a Classe canditado ondem tem o nome // IMPLEMENT AQUI da classe Candidato já fim só falta a da Classe Filtro, segue o código fonte.
Resumindo, tenho que desenvolver um metodo calculaIdade() da classe Candidato e um metodo realizaFiltragem() da classe Fitro como segue abaixo.
ESSA É A CLASE FILTRO
package estudodecaso2;
import java.util.ArrayList;
// Classe que representa o filtro de candidatos do sistema.
public class Filtro
{
// Metodo
/**
* Realiza a filtragem de candidatos
* @param nome nome do candidato
*/
public void realizaFiltragem(ArrayList<Empresa> empresas, ArrayList<Candidato> candidatos)
{
// IMPLEMENTE AQUI
}
}
ESSA É A CLASSE CANDITATO
package estudodecaso2;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.StringTokenizer;
/**
* @author TADS - UNITINS
* Classe que representa um candidato.
*/
public class Candidato
{
// Atributos
private String sNome;
private String sEndereco;
private String sCidade;
private String sEstado;
private String sTelefone;
private Calendar dDataNasc;
private char cSexo;
private String sEmail;
private String sEscolaridade;
private boolean bTrabOutraCidade;
private ArrayList<String> aCargos;
private ArrayList<Float> aSalariosPretendidos;
// Construtor
public Candidato()
{
sNome = null;
sEndereco = null;
sCidade = null;
sEstado = null;
sTelefone = null;
dDataNasc = Calendar.getInstance();
cSexo = ' ';
sEmail = null;
sEscolaridade = null;
bTrabOutraCidade = false;
aCargos = new ArrayList<String>();
aSalariosPretendidos = new ArrayList<Float>();
}
// Metodos
/**
* Configura o nome do candidato
* @param nome nome do candidato
*/
public void setNome(String nome)
{
sNome = nome;
}
/**
* Retorna o nome do candidato
* @return nome do candidato
*/
public String getNome()
{
return sNome;
}
/**
* Configura o endereco do candidato
* @param endereco endereco do candidato
*/
public void setEndereco(String endereco)
{
sEndereco = endereco;
}
/**
* Retorna o endereco do candidato
* @return endereco do candidato
*/
public String getEndereco()
{
return sEndereco;
}
/**
* Configura a cidade do candidato
* @param cidade cidade do candidato
*/
public void setCidade(String cidade)
{
sCidade = cidade;
}
/**
* Retorna a cidade do candidato
* @return cidade do candidato
*/
public String getCidade()
{
return sCidade;
}
/**
* Configura o estado do candidato
* @param estado estado do candidato
*/
public void setEstado(String estado)
{
sEstado = estado;
}
/**
* Retorna o estado do candidato
* @return estado do candidato
*/
public String getEstado()
{
return sEstado;
}
/**
* Configura o telefone do candidato
* @param telefone telefone do candidato
*/
public void setTelefone(String telefone)
{
sTelefone = telefone;
}
/**
* Retorna o telefone do candidato
* @return telefone do candidato
*/
public String getTelefone()
{
return sTelefone;
}
/**
* Configura a data de nascimento do candidato
* @param dataNasc data de nascimento do candidato
*/
public void setDataNasc(String dataNasc)
{
StringTokenizer st = new StringTokenizer(dataNasc, "/");
int iDia = Integer.parseInt(st.nextToken());
int iMes = Integer.parseInt(st.nextToken())-1;
int iAno = Integer.parseInt(st.nextToken());
dDataNasc.set(iAno, iMes, iDia);
}
/**
* Retorna o dia em que o candidato nasceu
* @return dia em que o candidato nasceu
*/
public int getDiaNasc()
{
return dDataNasc.get(Calendar.DATE);
}
/**
* Retorna o mes em que o candidato nasceu
* @return mes em que o candidato nasceu
*/
public int getMesNasc()
{
return dDataNasc.get(Calendar.MONTH);
}
/**
* Retorna o ano em que o candidato nasceu
* @return ano em que o candidato nasceu
*/
public int getAnoNasc()
{
return dDataNasc.get(Calendar.YEAR);
}
/**
* Retorna a data de nascimento do candidato
* @return data de nascimento do candidato
*/
public Calendar getDataNasc()
{
return dDataNasc;
}
/**
* Configura o sexo do candidato
* @param sexo sexo do candidato
*/
public void setSexo(char sexo)
{
cSexo = sexo;
}
/**
* Retorna o sexo do candidato
* @return sexo do candidato
*/
public char getSexo()
{
return cSexo;
}
/**
* Configura o e-mail do candidato
* @param email e-mail do candidato
*/
public void setEmail(String email)
{
sEmail = email;
}
/**
* Retorna o e-mail do candidato
* @return e-mail do candidato
*/
public String getEmail()
{
return sEmail;
}
/**
* Configura a escolaridade do candidato
* @param escolaridade escolaridade do candidato
*/
public void setEscolaridade(String escolaridade)
{
sEscolaridade = escolaridade;
}
/**
* Retorna a escolaridade do candidato
* @return escolaridade do candidato
*/
public String getEscolaridade()
{
return sEscolaridade;
}
/**
* Configura se o candidato tem disponibilidade para trabalhar em outra cidade (true) ou nao (false)
* @param trabOutraCidade disponibilidade do candidato trabalhar em outra cidade
*/
public void setTrabOutraCidade(boolean trabOutraCidade)
{
bTrabOutraCidade = trabOutraCidade;
}
/**
* Retorna se o candidato tem disponibilidade para trabalhar em outra cidade (true) ou nao (false)
* @return disponibilidade do candidato trabalhar em outra cidade
*/
public boolean getTrabOutraCidade()
{
return bTrabOutraCidade;
}
/**
* Armazena um cargo pretendido pelo candidato
* @param cargo cargo pretendido pelo candidato
*/
public void adicionaCargo(String cargo)
{
aCargos.add(cargo);
}
/**
* Retorna a lista de cargos pretendidos pelo candidado
* @return lista de cargos pretendidos
*/
public ArrayList<String> getCargo()
{
return aCargos;
}
/**
* Armazena o salario pretendido pelo candidato a um determinado cargo
* @param salario salario pretendido pelo candidato
*/
public void adicionaSalarioPretendido(float salario)
{
aSalariosPretendidos.add(salario);
}
/**
* Retorna a lista de salarios pretendidos pelo candidado
* @return lista de salarios pretendidos
*/
public ArrayList<Float> getSalariosPretendidos()
{
return aSalariosPretendidos;
}
/**
* Calcula a idade do candidato a partir da sua data de nascimento
* @return idade do candidato
*/
public int calculaIdade()
{
int idade = 0;
// IMPLEMENTE AQUI
return idade;
}
/**
* Retorna um indice para a escolaridade do candidato
* Ensino medio(0), Tecnico(1), Graduacao(2), Especializacao(3), Mestrado(4), Doutorado(5)
* @return indice da escolaridade do candidato
*/
public int getIndiceEscolaridade()
{
if((sEscolaridade.toLowerCase()).equals("ensino médio"))
{
return 0;
}
else if((sEscolaridade.toLowerCase()).equals("técnico"))
{
return 1;
}
else if((sEscolaridade.toLowerCase()).equals(("graduação")))
{
return 2;
}
else if((sEscolaridade.toLowerCase()).equals("especialização"))
{
return 3;
}
else if((sEscolaridade.toLowerCase()).equals("mestrado"))
{
return 4;
}
else if((sEscolaridade.toLowerCase()).equals("doutorado"))
{
return 5;
}
return -1;
}
}