Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Dúvida no Ex. 6 da Aula 1 - A grande variedade de impostos e o padrão Strategy

Eu gostaria de mais informações sobre o funcionamento do Random???

3 respostas
solução!

Ola Mariana:

Como o próprio nome diz, a classe Random (do pacote java.util) serve para gerar números aleatórios. Um exemplo:

       Random r = new Random();
       for (int i = 0; i < 10; i++) { 
        System.out.println(r.nextInt());
      }

Esse código ira gerar 10 números inteiros aleatórios (positivos e negativos misturados)

Mas você pode também gerar esses números em uma faixa de valores, por exemplo, de 0 até 30 vc quer 10 números aleatórios:

Random r = new Random(); for (int i = 0; i < 10; i++) { System.out.println(r.nextInt(30)); }

A classe Random tem vários outros métodos, por exemplo : nextFloat e nextDouble (retorna numeros decimais), nextBoolean() (retorna true ou false), etc.

Existem mais outras formas de utiliza-lo. Tem esse artigo: http://www.k19.com.br/artigos/numeros-aleatorios-em-java-a-classe-random/ que explica mais algumas coisas. Mas a utilização vai depender do seu dia-a-dia, caso vai precisar ou não.

QQ dúvida estamos ai .... Bons estudos

Olá Pessoal, só complementando, a classe Random também serve para gerar outros tipos primitivos, não somente inteiros, por exemplo:

import java.util.Random;

public class Teste {

public static void main(String[] args) {

// gerando um booleano aleatóriamente. boolean nextBoolean = new Random().nextBoolean(); System.out.println(nextBoolean);

// gerando um double aleatóriamente. double nextDouble = new Random().nextDouble(); System.out.println(nextDouble);

// gerando um float aleatóriamente. float nextFloat = new Random().nextFloat(); System.out.println(nextFloat);

// gerando um long aleatóriamente. long nextLong = new Random().nextLong(); System.out.println(nextLong);

// gerando um int aleatóriamente (limitado ao intervalo de 0 à 4). int nextInt = new Random().nextInt(4); System.out.println(nextInt);

}

}

Abraços e bons estudos!!!

Entendido! Obrigada pela ajuda Wiliam e Anderson.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software