Question

Boa tarde a todos, pessoal faço técnico em Desenvolvimento de Sistemas e tenho um trabalho em java em que devo criar alguma aplicação utilizando os conceitos da matéria. Resolvi então criar um sistema de cadastro de currículos , em que o usuário preenche os dados e ao clicar no botão "Cadastrar" cria uma referencia para classe currículo com os dados que o usuário digitou no formulário como valores para os seus atributos e adiciona o mesmo em uma Lista do tipo "Curriculo", para ver se os dados estavam realmente sendo inseridos conforme o planejado adicionei resolvi printar a lista, porém ela esta adicionando a mesma referência todas as vezes em que clico em "Cadastrar", e sempre substitui o ultimo adicionado na posição anterior por uma cópia sua, Por favor se puderem me ajudar ficaria grato, o trabalho é pra daqui a duas semanas 

public class Curriculo {
    private String nome;
    private String cpf;
    private String endereco;
    private String email;
    private String areaAtuacao;
    private String comunicacao;
    private String telefone;
    private String sexo;
    private int idade;
    private Formacao[] formacoes = new Formacao[4];
    private Experiencias_Profissionais[] experiencias = new Experiencias_Profissionais[4];
    int i =0;
    
    public void adicionarFormacao(Formacao [] formacoes){
        this.formacoes = formacoes;
    }
    
    public Formacao getFormacoes(){
        for(int i =0;i<formacoes.length;i++){
            return this.formacoes[i];
        }
        return null;
    }
    
    
    public void adicionarExperiencia(Experiencias_Profissionais [] experiencias){
       this.experiencias = experiencias;
    }
    public Experiencias_Profissionais getExperiencia(){
        for(int i =0;i<experiencias.length;i++){
            return this.experiencias[i];
        }
        return null;
    }
    
    public void setNome(String nome){
        this.nome = nome;
    }
    
    public String getNome(){
        return this.nome;
    }
    
    public void setEndereco(String endereco){
        this.endereco = endereco;
    } 
    
    public String getEndereco(){
        return this.endereco;
    }
    
    public void setEmail(String email){
        this.email = email;
    }
    
    public String getEmail(){
        return this.email;
    }
    
    public void setAreaAtuacao(String areaAtuacao){
        this.areaAtuacao = areaAtuacao;
    }
    
    public String getAreaAtuacao(){
        return this.areaAtuacao;
    }
    
    public void setComunicao(String comunicacao){
        this.comunicacao = comunicacao;
    }
    
    public String getComunicao(){
        return this.comunicacao;
    }
    
    public void setTelefone(String telefone){
        this.telefone = telefone;
    }
    
    public String getTelefone(){
        return this.telefone;
    }
    
    public void setIdade(int idade){
        this.idade = idade;
    }
    
    public int getIdade(){
        return this.idade;
    }
    
    public void setSexo(String sexo){
        this.sexo = sexo;
    }
    
    public String getSexo(){
        return this.sexo;
    }
    
    public void setCpf(String cpf){
        this.cpf = cpf;
    }
    
    public String getCpf(){
        return this.cpf;
    } 
    
    @Override
    public String toString() {
        return "curriculo{" + "nome=" + this.nome + ", Idade =" + this.idade + ",sexo =" + this.sexo + ",telefone=" + this.telefone  + ",cpf=" + this.cpf + ",email=" + this.email + ",area=" + this.areaAtuacao + ",comunicacao=" + this.comunicacao+ ",experiencias =" + this.experiencias[0]+",formacoes =" + this.formacoes[0]+ ",experiencias =" + this.experiencias[1]+",formacoes =" + this.formacoes[1]+ ",experiencias =" + this.experiencias[2]+",formacoes =" + this.formacoes[2]+ ",experiencias =" + this.experiencias[3]+",formacoes =" + this.formacoes[3]+'}';
    }
}


 private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {                                         
       
       //Evento do botao adicionar

        /***********************************************************************
         *Adiciona valores aos atributos de cada experiencia no vetor
         *Adiciona valores aos atributos de cada formacao no vetor
         Cada referencia para Curriculo na lista possui um array de formacoes e um de experiencias cada um com 4 posições
         */
        experiencias[0] = new Experiencias_Profissionais();
        experiencias[1] = new Experiencias_Profissionais();
        experiencias[2] = new Experiencias_Profissionais();
        experiencias[3] = new Experiencias_Profissionais();
        
        experiencias[0].setEmpresa(jTextField7.getText());
        experiencias[0].setCargo(jTextField8.getText());
        experiencias[0].setDataInicio(jTextField12.getText());
        experiencias[0].setDataFinal(jTextField11.getText());
        experiencias[0].setAtribuicoes(jTextField36.getText());
        
        experiencias[1].setEmpresa(jTextField9.getText());
        experiencias[1].setCargo(jTextField10.getText());
        experiencias[1].setDataInicio(jTextField14.getText());
        experiencias[1].setDataFinal(jTextField13.getText());
        experiencias[1].setAtribuicoes(jTextField37.getText());
        
        experiencias[2].setEmpresa(jTextField31.getText());
        experiencias[2].setCargo(jTextField32.getText());
        experiencias[2].setDataInicio(jTextField33.getText());
        experiencias[2].setDataFinal(jTextField34.getText());
        experiencias[2].setAtribuicoes(jTextField35.getText());
        
        experiencias[3].setEmpresa(jTextField39.getText());
        experiencias[3].setCargo(jTextField40.getText());
        experiencias[3].setDataInicio(jTextField41.getText());
        experiencias[3].setDataFinal(jTextField42.getText());
        experiencias[3].setAtribuicoes(jTextField67.getText());
        
        formacoes[0] = new Formacao();
        formacoes[1] = new Formacao();
        formacoes[2] = new Formacao();
        formacoes[3] = new Formacao();
        
        formacoes[0].setNomeCurso(jTextField43.getText());
        formacoes[0].setInstituicao(jTextField44.getText());
        formacoes[0].setNivel(jTextField45.getText());
        formacoes[0].setSituacao(jTextField46.getText());
        
        formacoes[1].setNomeCurso(jTextField55.getText());
        formacoes[1].setInstituicao(jTextField56.getText());
        formacoes[1].setNivel(jTextField57.getText());
        formacoes[1].setSituacao(jTextField58.getText());
        
        formacoes[2].setNomeCurso(jTextField59.getText());
        formacoes[2].setInstituicao(jTextField60.getText());
        formacoes[2].setNivel(jTextField61.getText());
        formacoes[2].setSituacao(jTextField62.getText());
        
        formacoes[3].setNomeCurso(jTextField63.getText());
        formacoes[3].setInstituicao(jTextField64.getText());
        formacoes[3].setNivel(jTextField65.getText());
        formacoes[3].setSituacao(jTextField66.getText());
        
   /*O problema esta abaixo (embora eu não saiba onde), na insercao das referencias a listaCurriculos, a variavel "adicionado" aumenta sempre que se clica no botao "cadastrar" para aumentar o alcance do for e por conseguinte o tamanho da lista. E nas imagens eu preenchi tudo com "xxx..." pois estava com presa xD.*/

        for(int i =0;i<adicionado;i++){ //Instancia uma referencia para Curriculo em cada posição da Lista
            listaCurriculos.inserirNaFrente(new Curriculo());
            break;
        }
        for( int i = 0;i<listaCurriculos.tamanhoLista;i++){//for para setar valor aos atributos do curriculo, de acordo com dados inseridos no formulario
           listaCurriculos.get(i).setNome(jTextField1.getText());
           listaCurriculos.get(i).setSexo(sexo);
           listaCurriculos.get(i).setIdade(Integer.parseInt(jTextField2.getText()));
           listaCurriculos.get(i).setTelefone(jTextField3.getText());
           listaCurriculos.get(i).setCpf(jTextField4.getText());
           listaCurriculos.get(i).setEndereco(jTextField5.getText());
           listaCurriculos.get(i).setEmail(jTextField6.getText());
           listaCurriculos.get(i).adicionarExperiencia(experiencias);
           listaCurriculos.get(i).adicionarFormacao(formacoes);
        }
        adicionado++;//Aumenta a cada click no botão Cadastrar
        

 

Share this post


Link to post
Share on other sites

0 answers to this question

Recommended Posts

There have been no answers to this question yet

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this