Javaで2つの端末間に乱数を生成する

乱数は、体の落下などの現象をシミュレートするシミュレーションや、グリッドが前のゲームや引き分けと異なっていなければならない数独などのビデオゲームなど、さまざまな分野で使用されます

Javaには、乱数を生成する2つの方法があります。 1つ目はjava.util.Randomで、2つ目はrandom()です。このチュートリアルでは、Java.

JavaのMath.random()メソッド

random()は使い方が簡単で、java.lang.Math および 正の符号が 0.0 より大きく 1.0 より小さい double を返します。生成される数は 1 です。double.

double nb;
nb = Math.random();
System.out.println(nb);
Run:

0.9610715687122661
1より大きい数値を得るには、結果に10,100,1000...100000.

nb=nb*100;
96.10715687122661

java.util.Randomクラス 

このクラスは、整数、浮動小数点数、倍精度浮動小数点数、バイト、ブール値など、いくつかの擬似乱数型の生成を提供するため、より強力です。

java

next(int n) は 0 から n-1 までの数値を均一に生成します

Random = new Random();
int nb;
nb = random.nextInt(9);
Random コンストラクタは、新しい数値ジェネレータを作成します。このコードを実行すると、ジェネレータによって選択された 0 から 8 までの数字が返されます。

java の 2 つの端末間で整数を生成

下限は結果で合計されます:
nb = borne_inférieur + random(borne_superieur-borne_inférieur)

int genererInt(int borneInf, int borneSup){
ランダム random = new Random();
int nb;
nb = borneInf+random.nextInt(borneSup-borneInf);
return nb;
}

public static void main(String[] args) {
System.out.println("range[10, 20]: "+generate(10,20));
}

Run:

range[10, 20]:15

random.nextBytes()nexBytes(bytes[])bytes ランダム。ビット数は引数として渡された配列のサイズと等しい

byte[] generate Bit(int size){
Random random = new Random();
byte[] tbyte = new byte[size];
random.nextBytes(tbyte);
tbyteを返します。
}
public static void main(String[] args) {
byte[] tbyte = generateBit(20);
for(byte bit:tbyte)
System.out.print(" "+bit);
}
Runtime:

-8 16 -7 27 54 -44 -75 88 -91 -74 -124 10 -100 101 -96 -41 -101 71 33 74

Boolean

Boolean には 2 つの値があります。 true または false.

boolean genererBool(){
Random random = new Random();
return random.nextBoolean();
}

javarandom()の場合、数字は0.0から1.0の間です.

float genererFloat(){
Random random = new Random();
return random.nextFloat();
}
double genererDouble(){
ランダム random = new Random();
return random.nextDouble();
}
public static void main(String[] args) {
System.out.println("float: "+generateDouble());
System.out.println("double: "+generateFloat());
}
Runtime:

double: 0.8538674831662335
float: 0.46791792
Java では、double は 8 バイトに格納され、float は 4 バイトに格納されます。

参照:
Javadoc: java.until.Random class
Javadoc: Math.random() メソッド
ランダムな整数の生成Java
java.util.Random.nextInt() Method