eu quero fazer da seguinte maneira , prencher um jTextField , com nome, endereço telefone e email e instancia-los dinamicamente quando pressionar o botão ok e guarda-los no arrayList.
Antes de usar ArrayList ou Swing… estude Orientacao a Objetos e Java puro…
Depois vc passa a aprender algumas APIs java como o Collections (que o ArrayList faz parte)
E depois Swing…
j.silvestre
Garcia
valew pela dica…
mas se alguém quiser postar um exemplo ai … pode sentir-se a vontade… Sou programador C, e agora estou estudando Java, e fiquei impressionado com o arrayList, e o fórum encurta o tempo de aprendizado, pelo menos até agora. mas eu tive uma boa impressão dos participantes deste fórum.a propósito estou com livro “Pense Java”.
sds
j.silvestre
rodrigo.bossini
Se você é programador C, já deve ter ouvido falar das funções malloc e calloc, não?
Pois então, em java, o operador new (similar ao new, disponível em c++) é o responsável pela alocação dinâmica de memória.
Portanto, cuidado pra não confundir as coisas.
Alocação de memória é uma coisa. O uso de ArrayList (uma coleção disponível no java, que fornece alocação sequencial, baseada em um vetor simples, semelhante a Vector, disponível em c++) é outra coisa.
rogelgarcia
Olá j.silvestre… falei isso pra vc… pq ficou claro que vc está passando o carro na frente dos bois… ehhe
No array list… vc nao se preocupa com a alocacao… veja o exemplo:
Alunoaluno1=newAluno();//criei um aluno.. a memoria foi alocada pra elealuno1.setNome("Joao");Alunoaluno2=newAluno();//criei outro aluno.. a memoria foi alocadaaluno2.setNome("Maria");ArrayListlist=newArrayList();//aloquei memoria para o ArrayList.. ele armazena um array internamente.. mas isso vc nao precisa se preocuparlist.add(aluno1);//coloca o aluno1 no array internolist.add(aluno2);//coloca o aluno2 no array interno.. se por um acasso nao couber no array interno.. é alocado um novo array maior.. os objetos sao migrados para o novo array.. e a vida continua.. mas vc nao se procupa com isso...
j.silvestre
Rod
O que é o arraylist em C ou C++ ???
é uma lista encadeada… só isso…
não quero criar polemica… só queria saber como instanciar objetos dinamicamente usando o arraylist . só isso…
sds
j.silvestre
rogelgarcia
Na verdade… nao querendo adicionar a polemica… mas já adicionando…
no C ou C++ ArrayList nao seria uma lista encadeada… :-o
no C ou C++ o Arraylist seria um array normal… se o array fica cheio… é criado outro array maior e migra os dados… só que isso fica encapsulado numa classe… no C++ deve ter uma classe assim…
j.silvestre
Garcia
isso vai ser uma discussão sem fim deixa pra lá… voltando ao foco que é java, o seguinte:
na verdade queria saber se da pra fazer da seguinte forma:
Stringx="aluno1";// string "aluno1" vindo de qualquer lugar Alunox=newAluno();//criei um aluno.. a memoria foi alocada pra ele x.setNome("Joao");ArrayListlist=newArrayList();//aloquei memoria para o ArrayList.. ele armazena um array internamente.. mas isso vc nao precisa se preocupar list.add(x);//coloca o aluno1 no array interno
valews…
j.silvestre
rodrigo.bossini
j.silvestre:
Rod
O que é o arraylist em C ou C++ ???
é uma lista encadeada… só isso…
não quero criar polemica… só queria saber como instanciar objetos dinamicamente usando o arraylist . só isso…
sds
j.silvestre
Em c++, um equivalente ao ArrayList do java seria a classe Vector. Aliás, talvez a palavra “equivalente” seja muito forte neste caso. Eu digo equivalente no sentido de que você pode adicionar elementos à coleção sem se preocupar com a alocação de memória. Como o ArrayList do Java, o Vector de C++ “cresce dinamicamente” à medida que isso se faz necessário.
montroni
Boa noite silvestre pegando o seu código de exemplo poderia sugerir o seguinte não sei se é realmente o que voce deseja mas poderia ser algo do genero, crie um construtor da classe agenda que recebe as informacoes deste forma voce poderia fazer desta forma para simplificar:
por exemplo para resgatar os dados voce deve usar o:
AgendamanuseandoRegistroAgenda;manuseandoRegistroAgenda=registroAgenda.get(posicaoquedeseja);//Aqui ele retorna um objeto do tipo Agenda para que voce possa mostrar, modificar etc...manuseandoRegistroAgenda.setNome("Marcio");...
Somente mais um detalhe observe que dentro dos padrões java a classe inicia com maiusculas e as instancias da classe com minusculas, ou seja:
agendaS=newagenda()// esta fora dos padroes
devendo ficar desta forma:
Agendaagenda=newAgenda();// modelo correto de nomeação dos recursos, isso não traz diferença para o compilador apenas para as pessoas que irão visualizar seu código fonte
Espero ter ajudado.
blessed
Esta correto. Criando um construtor resolvemos isto, mas os atributos sao privados ?