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
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:
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
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/
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:
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/
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
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:
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/
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:
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:
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