3
respostas

Implementar na classe TestaOrdenacao:

Prezados,

Por que está sendo utilizado o Collections.sort(contas);? Por que não criamos uma outra classe com esse método for? Estou um pouco perdido. Por que precisamos do Construtor de um Random? e Por que precisamos de nextInt? NextDouble? do Next?

public class TestaOrdenacao {

  public static void main(String[] args) {
    List<Conta> contas = new ArrayList<Conta>();
    Random random = new Random();

    ContaPoupanca c1 = new ContaPoupanca(random.nextInt(2000), "Caio");
    c1.deposita(random.nextInt(10000) + random.nextDouble());
    contas.add(c1);

    ContaPoupanca c2 = new ContaPoupanca(random.nextInt(2000), "Adriano");
    c2.deposita(random.nextInt(10000) + random.nextDouble());
    contas.add(c2);

    ContaPoupanca c3 = new ContaPoupanca(random.nextInt(2000), "Victor");
    c3.deposita(random.nextInt(10000) + random.nextDouble());
    contas.add(c3);

    Collections.sort(contas);

    for (Conta conta : contas) {
      System.out.println(conta);
    }
  }
}
3 respostas

Boa noite Marcel,

O método Collections.sort() serve para ordenar uma lista, no caso, a lista de contas.

Sobre o for , ele não é um método, mas sim um bloco de código no Java para quando se deseja fazer uma repetição. No caso, imprimir cada um dos itens da lista contas.

Segundo a documentação da classe Random, o construtor cria um novo objeto do tipo gerador de números aleatórios, e tenta fazer com que a geração de números forneça números diferentes entre uma invocação e outra do construtor.

Os métodos next (como nextInt()) da classe Random geram e retornam o próximo número pseudoaleatório, usando distribuição normal. Ou seja, no caso do nextInt(), busca-se um cenário em que todas as 2^32 possibilidades sejam produzidas com chance aproximadamente igual.

Espero tê-lo ajudado. Avisa aí se ficou mais claro. Se não, pode postar mensagem também.

Abraço.

Prezado Rafael,

Agradeço totalmente pela resposta, Collections então usou o parâmetro contas para utilizar pela biblioteca java a funçao Collections.sort, para poder ordenar a lista de contas.

O for vai ser sempre usado para repetiçao né?

O construtor da Classe Random foi criado somente para gerar numeros aleatorios certo?

Mas ainda fiquei perdido nos métodos que utilizam o Next.

peço desculpas pela lerdeza, mas gosto de entender as coisas para nao errar por mal entendimento.

Atte.

Marcel Machado

Bom dia Marcel,

Desculpe a demora. Semana foi corrida, rs.

Isso, o for é uma estrutura de repetição. Além delas, no Java, você tem também while e do-while.

Isso, o construtor de Random foi criado para gerar os números aleatórios.

Com qual dúvida você ficou nos métodos que usam next()?