Construtor Random()
Random() – Cria um novo gerador de números aleatórios.
public Random() – Cria um novo gerador de números aleatórios. Esse construtor define a semente do gerador de números aleatórios com um valor muito provável de ser distinto de qualquer outra invocação desse construtor.
Fonte do código: https://www.devmedia.com.br/numeros-aleatorios-em-java-a-classe-java-util-random/26355
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
import java.util.Random; public class Random1 { public static void main(String[] args) { //instância um objeto da classe Random usando o construtor padrão Random gerador = new Random(); //imprime sequência de 10 números inteiros aleatórios for (int i = 0; i < 10; i++) { System.out.println(gerador.nextInt()); } } } |
Construtor Random(long seed)
Random(long seed) – Cria um novo gerador de números aleatórios usando uma única semente longa.
public Random(long seed) – Cria um novo gerador de números aleatórios usando uma única semente longa. A semente é o valor inicial do estado interno do gerador de números pseudo-aleatórios que é mantido pelo método next (int).
A chamada new Random (seed) é equivalente a:
1 2 |
Random rnd = new Random(); rnd.setSeed(seed); |
Parâmetros:
semente – a semente inicial
Veja também:
Fonte do código: https://stackoverflow.com/questions/12458383/java-random-numbers-using-a-seed
1 |
Random rand = new Random(System.currentTimeMillis()); |
doubles()
doubles() – Retorna um fluxo efetivamente ilimitado de valores duplos pseudoaleatórios, cada um entre zero (inclusive) e um (exclusivo).
public DoubleStream doubles() – Retorna um fluxo efetivamente ilimitado de valores duplos pseudoaleatórios, cada um entre zero (inclusive) e um (exclusivo).
Um valor duplo pseudoaleatório é gerado como se fosse o resultado da chamada do método nextDouble ().
Nota de Implementação:
Este método é implementado para ser equivalente a dobra (Long.MAX_VALUE).
Retornos:
um fluxo de valores duplos pseudo-aleatórios
Esse método existe desde a versão 1.8.
Fonte do código: https://javatutorialhq.com/java/util/random-class-tutorial/doubles-method-example/
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
package com.javatutorialhq.java.examples; import java.util.Random; import java.util.function.DoubleConsumer; import java.util.stream.DoubleStream; /* * This example source code demonstrates the use of * doubles() method of Random class. */ public class RandomDoublesExample { public static void main(String[] args) { Random rand = new Random(); DoubleStream ds = rand.doubles(); ds.limit(10).forEach(new DoubleConsumer() { @Override public void accept(double value) { System.out.println(value); } }); } } |
doubles(double randomNumberOrigin, double randomNumberBound)
doubles(double randomNumberOrigin, double randomNumberBound) – Retorna um fluxo efetivamente ilimitado de valores duplos pseudoaleatórios, cada um em conformidade com a origem especificada (inclusive) e vinculado (exclusivo).
public DoubleStream doubles(double randomNumberOrigin, double randomNumberBound) – Retorna um fluxo efetivamente ilimitado de valores duplos pseudoaleatórios, cada um em conformidade com a origem especificada (inclusive) e vinculado (exclusivo).
Um valor duplo pseudoaleatório é gerado como se fosse o resultado da chamada do seguinte método com a origem e o limite:
1 2 3 4 5 6 7 |
double nextDouble(double origin, double bound) { double r = nextDouble(); r = r * (bound - origin) + origin; if (r >= bound) // correct for rounding r = Math.nextDown(bound); return r; } |
Nota de Implementação:
Este método é implementado para ser equivalente a dobra (Long.MAX_VALUE, randomNumberOrigin, randomNumberBound).
Parâmetros:
randomNumberOrigin – a origem (inclusive) de cada valor aleatório
randomNumberBound – o limite (exclusivo) de cada valor aleatório
Retornos:
um fluxo de valores duplos pseudo-aleatórios, cada um com a origem especificada (inclusive) e vinculado (exclusivo)
Lançamentos:
IllegalArgumentException – se randomNumberOrigin for maior ou igual a randomNumberBound
Esse método existe desde a versão 1.8.
Fonte do código: https://javatutorialhq.com/java/util/random-class-tutorial/doubles-randomnumberorigin-randomnumberbound-method-example/
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
package com.javatutorialhq.java.examples; import java.util.Random; import java.util.function.DoubleConsumer; import java.util.stream.DoubleStream; /* * This example source code demonstrates the use of * nextDouble(double origin, double bound)) method of Random class. */ public class RandomDoublesOriginExample { public static void main(String[] args) { Random rand = new Random(); DoubleStream ds = rand.doubles(5,10); ds.limit(10).forEach(new DoubleConsumer() { @Override public void accept(double value) { System.out.println(value); } }); } } |
doubles(long streamSize)
doubles(long streamSize) – Retorna um fluxo que produz o número streamSize especificado de valores duplos pseudoaleatórios, cada um entre zero (inclusive) e um (exclusivo).
public DoubleStream doubles(long streamSize) – Retorna um fluxo que produz o número streamSize especificado de valores duplos pseudoaleatórios, cada um entre zero (inclusive) e um (exclusivo).
Um valor duplo pseudoaleatório é gerado como se fosse o resultado da chamada do método nextDouble ().
Parâmetros:
streamSize – o número de valores a serem gerados
Retornos:
um fluxo de valores duplos
Lançamentos:
IllegalArgumentException – se streamSize for menor que zero
Esse método existe desde a versão 1.8.
Fonte do código: https://www.javatpoint.com/post/java-random-doubles-method
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
import java.util.Random; import java.util.stream.DoubleStream; public class JavaRandomDoublesExample4 { static int i=1; public static void main(String[] args) { double randomNumberOrigin=1; double randomNumberBound=7; long streamSize=12358; Random random=new Random(); DoubleStream d1=random.doubles(randomNumberOrigin,randomNumberBound); /*returns a stream producing given streamsize number of pseudorandom double value*/ DoubleStream d2 =random.doubles(streamSize); /*returns a stream producing given streamsize number of pseudorandom double value, each between the given origin and bound*/ DoubleStream d3 =random.doubles(streamSize,randomNumberOrigin,randomNumberBound); System.out.println(i+". "+d1); System.out.println(i+1 +". "+d2); System.out.println(i+2+". "+d3); } } |
doubles(long streamSize, double randomNumberOrigin, double randomNumberBound)
doubles(long streamSize, double randomNumberOrigin, double randomNumberBound) – Retorna um fluxo que produz o número streamSize especificado de valores duplos pseudo-aleatórios, cada um em conformidade com a origem especificada (inclusive) e vinculado (exclusivo).
public DoubleStream doubles(long streamSize, double randomNumberOrigin, double randomNumberBound) – Retorna um fluxo que produz o número streamSize especificado de valores duplos pseudo-aleatórios, cada um em conformidade com a origem especificada (inclusive) e vinculado (exclusivo).
Um valor duplo pseudoaleatório é gerado como se fosse o resultado da chamada do seguinte método com a origem e o limite:
1 2 3 4 5 6 7 |
double nextDouble(double origin, double bound) { double r = nextDouble(); r = r * (bound - origin) + origin; if (r >= bound) // correct for rounding r = Math.nextDown(bound); return r; } |
Parâmetros:
streamSize – o número de valores a serem gerados
randomNumberOrigin – a origem (inclusive) de cada valor aleatório
randomNumberBound – o limite (exclusivo) de cada valor aleatório
Retornos:
um fluxo de valores duplos pseudo-aleatórios, cada um com a origem especificada (inclusive) e vinculado (exclusivo)
Lançamentos:
IllegalArgumentException – se streamSize for menor que zero
IllegalArgumentException – se randomNumberOrigin for maior ou igual a randomNumberBound
Esse método existe desde a versão 1.8.
fonte do código: https://javatutorialhq.com/java/util/random-class-tutorial/doubles-streamsize-origin-bound-method-example/
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
package com.javatutorialhq.java.examples; import java.util.Random; import java.util.function.DoubleConsumer; import java.util.stream.DoubleStream; /* * This example source code demonstrates the use of * doubles(long streamSize, double randomNumberOrigin, double randomNumberBound) * method of Random class. */ public class RandomDoublesStreamSizeExample { public static void main(String[] args) { Random rand = new Random(); DoubleStream ds = rand.doubles(5,1,10); ds.forEach(new DoubleConsumer() { @Override public void accept(double value) { System.out.println(value); } }); } } |
ints()
ints() – Retorna um fluxo efetivamente ilimitado de valores int pseudoaleatórios.
public IntStream ints() – Retorna um fluxo efetivamente ilimitado de valores int pseudoaleatórios.
Um valor int pseudoaleatório é gerado como se fosse o resultado da chamada do método nextInt ().
Nota de implementação:
Este método é implementado para ser equivalente a ints (Long.MAX_VALUE).
Retornos:
um fluxo de valores int pseudo-aleatórios
Esse método existe desde a versão 1.8.
ints(int randomNumberOrigin, int randomNumberBound)
ints(int randomNumberOrigin, int randomNumberBound) – Retorna um fluxo efetivamente ilimitado de valores pseudoaleatórios, cada um em conformidade com a origem especificada (inclusive) e vinculado (exclusivo).
public IntStream ints(int randomNumberOrigin, int randomNumberBound) – Retorna um fluxo efetivamente ilimitado de valores pseudoaleatórios, cada um em conformidade com a origem especificada (inclusive) e vinculado (exclusivo).
Um valor int pseudoaleatório é gerado como se fosse o resultado da chamada do seguinte método com a origem e o limite:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
int nextInt(int origin, int bound) { int n = bound - origin; if (n > 0) { return nextInt(n) + origin; } else { // range not representable as int int r; do { r = nextInt(); } while (r < origin || r >= bound); return r; } } |
Nota de implementação:
Este método é implementado para ser equivalente a ints (Long.MAX_VALUE, randomNumberOrigin, randomNumberBound).
Parâmetros:
randomNumberOrigin – a origem (inclusive) de cada valor aleatório
randomNumberBound – o limite (exclusivo) de cada valor aleatório
Retornos:
um fluxo de valores int pseudo-aleatórios, cada um com a origem especificada (inclusive) e vinculado (exclusivo)
Lançamentos:
IllegalArgumentException – se randomNumberOrigin for maior ou igual a randomNumberBound
Esse método existe desde a versão 1.8.
Fonte do código: https://www.javatpoint.com/java-threadlocalrandom-ints-method
- import java.util.concurrent.ThreadLocalRandom;
- public class ThreadLocalRandomIntsExample2 {
- public static void main(String[] args) {
- // Returns a stream of pseudorandom int values
- System.out.println(“stream of pseudorandom int value is: ” +ThreadLocalRandom.current().ints(20, 30));
- }
- }
ints(long streamSize)
ints(long streamSize) – Retorna um fluxo que produz o número streamSize especificado de valores int pseudo-aleatórios.
public IntStream ints(long streamSize) – Retorna um fluxo que produz o número streamSize especificado de valores int pseudo-aleatórios.
Um valor int pseudoaleatório é gerado como se fosse o resultado da chamada do método nextInt ().
Parâmetros:
streamSize – o número de valores a serem gerados
Retornos:
um fluxo de valores int pseudo-aleatórios
Lançamentos:
IllegalArgumentException – se streamSize for menor que zero
Esse método existe desde a versão 1.8.
ints(long streamSize, int randomNumberOrigin, int randomNumberBound)
ints(long streamSize, int randomNumberOrigin, int randomNumberBound) – Retorna um fluxo que produz o número streamSize especificado de valores pseudoaleatórios, cada um em conformidade com a origem especificada (inclusive) e vinculado (exclusivo).
public IntStream ints(long streamSize, int randomNumberOrigin, int randomNumberBound) – Retorna um fluxo que produz o número streamSize especificado de valores pseudoaleatórios, cada um em conformidade com a origem especificada (inclusive) e vinculado (exclusivo).
Um valor int pseudoaleatório é gerado como se fosse o resultado da chamada do seguinte método com a origem e o limite:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
int nextInt(int origin, int bound) { int n = bound - origin; if (n > 0) { return nextInt(n) + origin; } else { // range not representable as int int r; do { r = nextInt(); } while (r < origin || r >= bound); return r; } } |
Parâmetros:
streamSize – o número de valores a serem gerados
randomNumberOrigin – a origem (inclusive) de cada valor aleatório
randomNumberBound – o limite (exclusivo) de cada valor aleatório
Retornos:
um fluxo de valores int pseudo-aleatórios, cada um com a origem especificada (inclusive) e vinculado (exclusivo)
Lançamentos:
IllegalArgumentException – se streamSize for menor que zero ou randomNumberOrigin for maior ou igual a randomNumberBound
Esse método existe desde a versão 1.8.
Fonte do código: https://www.javatpoint.com/java-threadlocalrandom-ints-method
- import java.util.concurrent.ThreadLocalRandom;
- public class ThreadLocalRandomIntsExample6 {
- public static void main(String[] args) {
- // Returns a stream of pseudorandom int values
- System.out.println(“stream of pseudorandom int value is: ” +ThreadLocalRandom.current().ints(10, 20, 30));
- }
- }
longs()
longs() – Retorna um fluxo efetivamente ilimitado de valores longos pseudoaleatórios.
public LongStream longs() – Retorna um fluxo efetivamente ilimitado de valores longos pseudoaleatórios.
Um valor longo pseudoaleatório é gerado como se fosse o resultado da chamada do método nextLong ().
Nota de implementação:
Este método é implementado para ser equivalente a longs (Long.MAX_VALUE).
Retornos:
um fluxo de valores longos pseudo-aleatórios
Esse método existe desde a versão 1.8.
Fonte do código: https://www.codota.com/code/java/methods/java.util.Random/longs
long[] randomLongsGet = new Random(0x123456789ABCDL).longs().limit(this.mapSizeDividedBy16000).toArray();
longs(long streamSize)
longs(long streamSize) – Retorna um fluxo que produz o número streamSize especificado de valores longos pseudo-aleatórios.
public LongStream longs(long streamSize) – Retorna um fluxo que produz o número streamSize especificado de valores longos pseudo-aleatórios.
Um valor longo pseudoaleatório é gerado como se fosse o resultado da chamada do método nextLong ().
Parâmetros:
streamSize – o número de valores a serem gerados
Retornos:
um fluxo de valores longos pseudo-aleatórios
Lançamentos:
IllegalArgumentException – se streamSize for menor que zero
Esse método existe desde a versão 1.8.
Fonte: https://docs.oracle.com/en/java/javase/14/docs/api/java.base/java/util/Random.html
Deixe um comentário