Boa tarde galera sou iniciante em java e to apanhando um pouco com arraylist, estou tentando criar uma arraylist de modo que cada posicao contenha um objeto
que recebe os seguintes parametros int a , int b , int c , queria imprimir eles na tela mais nao estou conseguindo vo posta meu codigo por favor me ajudem…
obrigado
public class Admnistrando {
private int a;
private int b;
private int c;
ArrayList pq = new ArrayList();
Pessoa t = new Pessoa(this.a,this.b,this.c);
public void adicionando(){
Scanner ent = new Scanner(System.in);
System.out.println("Digite um numero");
this.a = ent.nextInt();
t.seta(this.a);
System.out.println("Digite um numero");
this.b = ent.nextInt();
t.setb(this.b);
System.out.println("Digite um numero");
this.c = ent.nextInt();
t.setc(this.c);
pq.add(t);
}
public void imprime()
{
for (Pessoa t : pq) {
System.out.println(t.a + “,” + t.b + “,” + t.c);
}
entao cara na verdade eu tenho um construtor na classe Pessoa que tem os tres parametros int
ai eu queria que o usuario digitasse e eu conseguisse imprimi esses 3 ints…
supondo que esses 3 ints , seja diferente tipo rg , cpf , id para que eu n precise criar uma arraylist pra cada tipo diferente
Me parece que tu tem uma dúvida sobre os fundamentos básicos do Java.
Recomendo fortemente que faça uma leitura de apostilas gratuitas sobre Java na internet, por sinal, tem as da Caelum que são de ótimo qualidade.
Vou demonstrar algo bem simples, espero que entenda e seja o que precisa.
[code]public class Pessoa {
private String nome;
private int idade;
public Pessoa(String nome, int idade) {
this.nome = nome;
this.idade = idade;
}
public String getNome() {
return nome;
}
public int getIdade() {
return idade;
}
}[/code]
Preenchendo e recuperando valores:
[code]public static void main(String args[]) {
Pessoa p = new Pessoa(“João”, 25);
Pessoa p1 = new Pessoa(“José”, 30);
List listPessoas = new ArrayList();
listPessoas.add§;
listPessoas.add(p1);
Esse tipo de objeto, como é o caso de Pessoa, chamamos de um objeto imutavél, pois perceba, para alterar nome e/o idade, se faz necessário a criação de um novo objeto e não o que já existe, portanto, não é possível alterar diretamente os valores do Objeto quando eles já foram populados.
mt obrigado ja ajudo muito!
So mais uma pergunta ao inves de eu digitar o nome e a idade daria certo se eu fizesse como eu fiz no meu exemplo usando o scanner para pegar
o que o usuario digito , salvar numa variavel e depois passar como parametro quando voce cria o objeto p …
pq ainda to com dificuldade em ve como seria se eu fosse adicionar varios contatos sem precisar criar p , p1 , p2… etc =)
[quote=halp1]mt obrigado ja ajudo muito!
So mais uma pergunta ao inves de eu digitar o nome e a idade daria certo se eu fizesse como eu fiz no meu exemplo usando o scanner para pegar
o que o usuario digito , salvar numa variavel e depois passar como parametro quando voce cria o objeto p …
pq ainda to com dificuldade em ve como seria se eu fosse adicionar varios contatos sem precisar criar p , p1 , p2… etc =)
obrigado…
[/quote]
Claro.
O que eu fiz foi apenas demonstrar um pouco do conceito, mais nada.
Você pode usar Scanner, Swing, HTML, JSF, enfim, a forma de entrada dos dados fica exclusivamente a teu critério
[quote=halp1]nao querendo explorar mais ja explorando… e mt rsrs
e se fosse adicionar varios contatos com esse objeto como eu faria pra nao precisar adicionar por exemplo um por um tipo (p , p1 , p2 , p3) obrgado…[/quote]
Não entendi sua pergunta.
O que seria adicionar vários contatos com esse objeto?
Pode esquecer a linguagem de objetos, apenas diga, “quero adicionar tantas pessoas”, talvez fique mais claro a pergunta.
eh foi mau to acostumando ainda com a linguagem nova =)
entao eu qria sabe como adicionar varias pessoas pq se fosse um numero grande de contatos n seria viavel criar como no seu exemplo um p para cara contato… =)
[quote=halp1]eh foi mau to acostumando ainda com a linguagem nova =)
entao eu qria sabe como adicionar varias pessoas pq se fosse um numero grande de contatos n seria viavel criar como no seu exemplo um p para cara contato… =)
[/quote]
Não seria viavél? E como tu pretende fazer isso?
Entenda que consideramos que uma Pessoa é única e dessa forma deve ser o objeto que a representa.
Não podemos ter um Objeto Pessoa representado mais do que uma, concorda comigo?
Isso é até crime em nossa sociedade, certo? Imagina a confusão tendo eu e você os mesmos CPF e/ou RG.
Pensando assim, você precisa obrigatoriamente, para cada cadastro de Pessoa ter de criar uma pessoa e adicionar a lista.
Eu demonstrei apenas dois atributos muito simples, como Nome e Idade, você pode ter herança ai, para ter CPF ou CNPJ e por ai fora.
Mas não, se quer várias pessoas serão vários objetos e uma lista contendo eles