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
publicclassCurriculo{privateString nome;privateString cpf;privateString endereco;privateString email;privateString areaAtuacao;privateString comunicacao;privateString telefone;privateString sexo;privateint idade;privateFormacao[] formacoes =newFormacao[4];privateExperiencias_Profissionais[] experiencias =newExperiencias_Profissionais[4];int i =0;publicvoid adicionarFormacao(Formacao[] formacoes){this.formacoes = formacoes;}publicFormacao getFormacoes(){for(int i =0;i<formacoes.length;i++){returnthis.formacoes[i];}return null;}publicvoid adicionarExperiencia(Experiencias_Profissionais[] experiencias){this.experiencias = experiencias;}publicExperiencias_Profissionais getExperiencia(){for(int i =0;i<experiencias.length;i++){returnthis.experiencias[i];}return null;}
publicvoid setNome(String nome){this.nome = nome;}publicString getNome(){returnthis.nome;}publicvoid setEndereco(String endereco){this.endereco = endereco;}publicString getEndereco(){returnthis.endereco;}publicvoid setEmail(String email){this.email = email;}publicString getEmail(){returnthis.email;}publicvoid setAreaAtuacao(String areaAtuacao){this.areaAtuacao = areaAtuacao;}
publicString getAreaAtuacao(){returnthis.areaAtuacao;}publicvoid setComunicao(String comunicacao){this.comunicacao = comunicacao;}publicString getComunicao(){returnthis.comunicacao;}publicvoid setTelefone(String telefone){this.telefone = telefone;}
publicString getTelefone(){returnthis.telefone;}publicvoid setIdade(int idade){this.idade = idade;}publicint getIdade(){returnthis.idade;}publicvoid setSexo(String sexo){this.sexo = sexo;}publicString getSexo(){returnthis.sexo;}publicvoid setCpf(String cpf){this.cpf = cpf;}publicString getCpf(){returnthis.cpf;}@Override
publicString 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]+'}';}}privatevoid 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]=newExperiencias_Profissionais();
experiencias[1]=newExperiencias_Profissionais();
experiencias[2]=newExperiencias_Profissionais();
experiencias[3]=newExperiencias_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]=newFormacao();
formacoes[1]=newFormacao();
formacoes[2]=newFormacao();
formacoes[3]=newFormacao();
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(newCurriculo());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
Pergunta
Gabriel Vitor
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
Link para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.