Tenho a seguinte classe bean
public class Cliente{
String nome;
String email;
//e seus metodos set e get
}
gostaria de instanciar essa classe Cliente como um Vetor, sem mexer na minha classe bean, é possivel???
por exemplo:
public void static main(String args[]){
Cliente[] cli=new Cliente[10];
cli[0].setNome(“beto”);
cli[1].setNome(“Joao”);
cli[2].setNome(“roberval”);
cli[3].setNome(“malabi”);
for(int i=0, i==cli.lenght;i++){
System.out.println(“Nome:” +cli[i].getNome());
}
}
só que aqui quando faço isso ele retorna null point exception…
Então procurei algo sobre ArrayList mas nao achei nenhuma slução possivel…
Alguém pode me ajudar com a solução ou em Arraylist ou usando apenas o vetor???
Att Cyro franco
public void static main(String args[]){
Cliente[] cli=new Cliente[10];
for(int i=0, i < cli.lenght;i++)
cli[i] = new Cliente();
cli[0].setNome("beto");
cli[1].setNome("Joao");
cli[2].setNome("roberval");
cli[3].setNome("malabi");
for(int i=0, i < cli.lenght;i++){
System.out.println("Nome:" +cli[i].getNome());
}
}
Estude melhor Arrays…
m0ska
Setembro 18, 2007, 11:01am
#4
List<Cliente> clientes = new ArrayList<Cliente>();
Cliente c1 = new Cliente();
c1.setNome("nome1");
clientes.add(c1);
...
foi mal pelas tags ai cara…
desculpa mas nao entendi direito…
entendi que nao funciona… mas existe solução pra isso???
eu teria que inicializar o objeto??? ou
simplesmente nao vai funcionara assim??
Valeu leandro brigadao cara!!! mas assim vai ficar meio escabroso, instanciar varios objetos vai ficar feião… usando array list como seria???
o m0ska posto um exemplo usando arraylist
[quote][code]List clientes = new ArrayList();
Cliente c1 = new Cliente();
c1.setNome(“nome1”);
clientes.add(c1); [/code]author: m0ska[/quote]
o m0ska posto um exemplo usando arraylist
[quote][code]List clientes = new ArrayList();
Cliente c1 = new Cliente();
c1.setNome(“nome1”);
clientes.add(c1); [/code]author: m0ska[/quote]
Entendi… mas nesse caso nao será muito util eu usar o array list certo… seria interessante caso eu tivesse:
List<Cliente> clientes = newArrayList<Cliente>();
Cliente c1 = newCliente();
c1.setNome("nome1");
c1.setEmail("nome1");
c1.setTelefone("nome1");
c1.setEndereco("nome1");
clientes.add(c1);
correto???
na verdade eu quero usar esse vetor, para passar valores de um select * from de um servlet para uma jsp…
LPJava
Setembro 18, 2007, 12:47pm
#10
opa nao querendo ser chato
dar uma lida aqui: http://www.guj.com.br/posts/list/50115.java
jobiz
Setembro 18, 2007, 2:50pm
#11
Não sei se entendi direito… veja se é isso que vc precisa:
List<Cliente> cliente = new ArrayList<Cliente>();
String SQL;
SQL = "SELECT * FROM cliente";
ResultSet rsCliente = st.executeQuery(SQL);
while(rsCliente.next()){
Cliente cli = new Cliente();
cli.setNome(rs.getString("nome");
cli.setEndereco(rs.getString("endereco");
cli.setTelefone(rs.getString("telefone");
cliente.add(cli);
}
Assim vc vai ter um array de objeto com os dados da sua consulta.
ve se isso ajuda…
vc tem que criar os objetos Cliente antes…
public static void main(String[] args) {
// TODO Auto-generated method stub
Cliente[] vetCliente = new Cliente[10];
for (int i = 0; i < vetCliente.length; i++) {
vetCliente[i] = new Cliente(); //criado objeto CLiente
}
vetCliente[0].setNome("nome");
vetCliente[1].setNome("nome1");
vetCliente[2].setNome("nome2");
vetCliente[3].setNome("nome3");
vetCliente[4].setNome("nome4");
vetCliente[5].setNome("nom5");
vetCliente[6].setNome("roberval");
vetCliente[7].setNome("malabi");
vetCliente[8].setNome("beto");
vetCliente[9].setNome("Joao");
for(int i=0; i< vetCliente.length; i++){
System.out.println("Nome:" +vetCliente[i].getNome());
}
isso ai e com List…em baixo tem com ArrayList e mais facil e vc cria somente os objetos de cliente que vc vai usa.
public static void main(String[] args)
{
ArrayList list = new ArrayList();
for(int i=0;i<5;i++)
{
Cliente cliente = new Cliente();
cliente.setNome("nome"+i);
list.add(cliente);
}
Iterator iterator = list.iterator();
//percorre a Lista
while(iterator.hasNext())
{
Cliente cli = (Cliente) iterator.next();
System.out.println(cli.getNome());
}
}
espero que ajude falo
Valeu Mario, foi muito util o seu código… mas o Jobiz foi perfeito… eu nao estava entendendo direito como seria util uma List… entendi o funcionamento, mas nao tinha entendido ainda qual seria a grande vantagem de se usa-la ao invés de um vetor simples, minha duvida surgiu pois eu ja tenho uma estrutura montada, com a classe Cliente e os metodos set e get prontos, e eu nao queria alterar a estrutura da minha classe… usando uma list eu tenho a vantagem de não definir o tamanho do meu vetor…
Acho que esse topico vai ser muito util para as pessoas que tem duvidas sobre uso de List e Vetores…
Grato Cyro.