Collections!

Ola , dado uma classe

  public class Pais {
           public String nome;
            public Double kmQuadrados;
        }

digamos que eu inclua em uma função as linhas de codigo abaixo

List lista = new ArrayList();
Pais brasil = new Pais();
brasil.nome = "Brasil";
brasil.kmQuadrados = 8511965.0;
lista.add(brasil);
brasil.nome = "Brasil2";
brasil.kmQuadrados = 2654;
lista.add(brasil);
brasil.nome = "Brasil3";
brasil.kmQuadrados = 1125;
lista.add(brasil);

o array deveria ficar ordenado da seguinte forma:
| Brasil | Brasil 2 | Brasil 3 |

Porem ele naum fica … Ele repete o ultimo elemento e fica da seguinte forma:
| Brasil 3 | Brasil 3 | Brasil 3 |

Porque isto acontece???
Como eu faço para gravar na sequencia correta???

Obrigado

Vou corrigir o seu código e você vai me explicar porque agora está certo.

 List lista = new ArrayList();
 Pais pais = new Pais();
 pais.nome = "Brasil";
 pais.kmQuadrados = 8511965.0;
 lista.add(pais);
 pais = new Pais();
 pais.nome = "Brasil2";
 pais.kmQuadrados = 2654;
 lista.add(pais);
 pais = new Pais();
 pais.nome = "Brasil3";
 pais.kmQuadrados = 1125;
 lista.add(pais);

[quote=marcosfzara]Ola , dado uma classe

  public class Pais {
           public String nome;
            public Double kmQuadrados;
        }

digamos que eu inclua em uma função as linhas de codigo abaixo

List lista = new ArrayList();
Pais brasil = new Pais();
brasil.nome = "Brasil";
brasil.kmQuadrados = 8511965.0;
lista.add(brasil);
brasil.nome = "Brasil2";
brasil.kmQuadrados = 2654;
lista.add(brasil);
brasil.nome = "Brasil3";
brasil.kmQuadrados = 1125;
lista.add(brasil);

o array deveria ficar ordenado da seguinte forma:
| Brasil | Brasil 2 | Brasil 3 |

Porem ele naum fica … Ele repete o ultimo elemento e fica da seguinte forma:
| Brasil 3 | Brasil 3 | Brasil 3 |

Porque isto acontece???
Como eu faço para gravar na sequencia correta???

Obrigado[/quote]

:shock: não vou falar qual é o seu erro…por que o thingol disse para você tentar descobrir o erro…ahahahaha :smiley:

Oks Entendi , porem vou complicar um pouco mais
digamos que a classe q define os dados esteje em um arquivo .class diferente
no caso teriamos

arquivo Main.class :

package testejava;
public class Main {

  public static class Pais {
       public static String nome;
        public static Double kmQuadrados;
  }

}

Arquivo alunos.class :

package testejava;
public class alunos {
private void adicionar() {
List lista = new ArrayList();

  Main.Pais pais = new Main.Pais();
  pais.nome = "Brasil";
  pais.kmQuadrados = 8511965.0;
  lista.add(pais);
  pais = new Main.Pais();
  pais.nome = "Brasil2";
 pais.kmQuadrados = 2654;
 lista.add(pais);
 pais = new Main.Pais();
 pais.nome = "Brasil3";
 pais.kmQuadrados = 1125;
 lista.add(pais);

}
}

Neste caso o Erro Persiste ou seja ,
o array deveria ficar ordenado da seguinte forma:
| Brasil | Brasil 2 | Brasil 3 |

Porem ele naum fica … Ele repete o ultimo elemento e fica da seguinte forma:
| Brasil 3 | Brasil 3 | Brasil 3 |

E agora oque eu faço para que ele grave na sequencia corrta???

Obrigado

Que tal aprender o básico do básico de Java primeiro? Coisas como o sistema de tipos da linguagem.

Olá

[quote=marcosfzara] porem vou complicar um pouco mais
[/quote]

Caramba, colocando código aqui sem identação só se for para complicar MESMO.

Vou descomplicar, mas da próxima vez use as TAGs Code aqui do GUJ

arquivo Main.class :

package testejava;
public class Main {
    
      public static class Pais {
           public static String nome;
            public static Double kmQuadrados;
      }
}

Arquivo alunos.class :

package testejava;
public class alunos {
 private void adicionar() {                                      
      List lista = new ArrayList();
      
      Main.Pais pais = new Main.Pais();
      pais.nome = "Brasil";
      pais.kmQuadrados = 8511965.0;
      lista.add(pais);
      pais = new Main.Pais();
      pais.nome = "Brasil2";
     pais.kmQuadrados = 2654;
     lista.add(pais);
     pais = new Main.Pais();
     pais.nome = "Brasil3";
     pais.kmQuadrados = 1125;
     lista.add(pais);
   }
}

Siga os conselhos do Louds que hoje sabe muito mas não nasceu sabendo. Primeiro ele estudou muito.

[]s
Luca

[quote=marcosfzara]Oks Entendi , porem vou complicar um pouco mais
digamos que a classe q define os dados esteje em um arquivo .class diferente

E agora oque eu faço para que ele grave na sequencia corrta???
[/quote]

Acho que sim…devia pensar em dar uma estudadinha nos conceitos básicos de java para dar uma melhor compreendida do código…veja mais sobre conceitos de herança, composição…em geral OOP

Ola pessoal.

Muito Obrigado pelas respostas . Mas tenho um pequeno probleminha, meu professor de POO foi horrivel durante todo o semestre , e muitos dos conceitos básicos de java foi passado em branco… Porem agora nos 45 do segundo tempo ele mandou todo mundo fazer um trabalho imenso em java como conclusão do semestre , e eu tenho que entregar o mesmo até segunda feira de manhã.
Adorei esse contato com a linguagem java porém não tenho tempo habil para estudar tudo nesse momento. Por isso peço-lhes encarecidamente , se tiver alguém que possa fazer essa gentileza de corrigir meu código .

Muito Obrigado …