Java で指定された範囲内の乱数を生成する
-
Java の
ThreadLocalRandom
クラスを使用して乱数を生成する -
Java の
Math
クラスを使用して乱数を生成する -
Java の
Random
クラスを使用して乱数を生成する -
Java の
Random
クラスを使用して乱数を生成する -
Java の
Random
クラスとIntStream
を使用して乱数を生成する -
Java で
nextFloat
メソッドを使用して乱数を生成する -
Java の
RandomData
クラスを使用して乱数を生成する -
Java で
SecureRandom
クラスを使用して乱数を生成する -
Java の
RandomUtils
クラスを使用して乱数を生成する
このチュートリアルでは、Java で指定された範囲内の乱数を生成する方法を紹介します。
Java で乱数を生成する方法はいくつかあります。たとえば、ThreadLocalRandom
クラスの nextInt()
メソッド、Math
クラスの random()
メソッド、nextInt()
メソッドです。Random
クラス、Random
クラスの ints()
メソッド、Random
クラスおよび RandomUtil
クラスの nextFloat()
メソッドなど。
Java の ThreadLocalRandom
クラスを使用して乱数を生成する
Java 並行パッケージは、nextInt()
メソッドを持つクラス ThreadLocalRandom
を提供します。このメソッドは、指定された範囲内でランダムな整数を生成できます。以下の例を参照してください。
import java.util.concurrent.ThreadLocalRandom;
public class SimpleTesting {
public static void main(String[] args) {
int min_val = 10;
int max_val = 100;
ThreadLocalRandom tlr = ThreadLocalRandom.current();
int randomNum = tlr.nextInt(min_val, max_val + 1);
System.out.println("Random Number: " + randomNum);
}
}
出力:
Value in double: 12.9
Value in int: 12
Java の Math
クラスを使用して乱数を生成する
Java Math
クラスを使用して、指定された範囲内の乱数を生成できます。ここでは、Math
クラスの random()
メソッドを使用して乱数を取得します。以下の例を参照してください。
public class SimpleTesting {
public static void main(String[] args) {
int min_val = 10;
int max_val = 100;
double randomNum = Math.random() * (max_val - min_val);
System.out.println("Random Number: " + randomNum);
}
}
出力:
Id: 1212
Name: Samre
Java の Random
クラスを使用して乱数を生成する
Java の Random
クラスは、整数値を返す nextInt()
メソッドを使用して、指定された範囲内のランダム整数を生成できます。以下の例を参照してください。
import java.util.Random;
public class SimpleTesting {
public static void main(String[] args) {
int min_val = 10;
int max_val = 100;
Random ran = new Random();
int x = ran.nextInt(max_val) + min_val;
System.out.println("Random Number: " + x);
}
}
出力:
Id: 1212
Name: Samre
Java の Random
クラスを使用して乱数を生成する
これは、指定された範囲内のランダムな整数を取得するための別のソリューションです。ここでは、さまざまなパラメータを使用して、Random
クラスの nextInt()
メソッドを使用します。以下の例を参照してください。
import java.util.Random;
public class SimpleTesting {
public static void main(String[] args) {
int min_val = 10;
int max_val = 100;
Random rand = new Random();
int randomNum = min_val + rand.nextInt((max_val - min_val) + 1);
System.out.println("Random Number: " + randomNum);
}
}
出力:
Random Number: 75
Java の Random
クラスと IntStream
を使用して乱数を生成する
ここでは、乱数のストリームを返す Random
クラスの ints()
メソッドを使用します。forEach()
メソッドを使用して、ints()
メソッドによって生成されたすべてのランダムな整数を出力します。以下の例を参照してください。
import java.util.Random;
import java.util.stream.IntStream;
public class SimpleTesting {
public static void main(String[] args) {
int min_val = 10;
int max_val = 100;
Random rand = new Random();
IntStream stream = rand.ints(5, min_val, max_val);
stream.forEach(System.out::println);
}
}
出力:
94
35
90
74
47
Java で nextFloat
メソッドを使用して乱数を生成する
Random
クラスは、float 型の乱数を生成するためのメソッド nextFloat()
を提供します。浮動小数点型の乱数を取得する場合は、このメソッドが役立ちます。以下の例を参照してください。
import java.util.Random;
public class SimpleTesting {
public static void main(String[] args) {
int min_val = 10;
int max_val = 100;
Random rand = new Random();
float rand_val = rand.nextFloat() * (max_val - min_val);
System.out.println(rand_val);
}
}
出力:
71.88764
Java の RandomData
クラスを使用して乱数を生成する
Apache Commons ライブラリを使用している場合は、RandomData
クラスを使用してください。このクラスは、整数値を返すメソッド nextInt()
を提供します。このメソッドを使用して、指定された範囲内のランダムな整数を生成できます。以下の例を参照してください。
import org.apache.commons.math.random.RandomData;
import org.apache.commons.math.random.RandomDataImpl;
public class SimpleTesting {
public static void main(String[] args) {
int min_val = 10;
int max_val = 100;
RandomData randomData randomData = new RandomDataImpl();
int number = randomData.nextInt(min_val, max_val);
System.out.println(number);
}
}
出力:
72
Java で SecureRandom
クラスを使用して乱数を生成する
SecureRandom クラスは、安全な乱数を作成するために使用される Java の security
パッケージに属しています。ここでは、Date
クラスを使用してシードを生成し、次に nextInt()
メソッドを使用してランダムな整数を生成します。以下の例を参照してください。
import java.security.SecureRandom;
import java.util.Date;
public class SimpleTesting {
public static void main(String[] args) {
int min_val = 10;
int max_val = 100;
SecureRandom rand = new SecureRandom();
rand.setSeed(new Date().getTime());
int randomNum = rand.nextInt((max_val - min_val) + 1) + min_val;
System.out.println(randomNum);
}
}
出力:
65
Java の RandomUtils
クラスを使用して乱数を生成する
Apache Commons ライブラリの RandomUtil
クラスを使用して、ランダムな整数を生成できます。このクラスの nextInt()
メソッドは整数クラスを返します。以下の例を参照してください。
import org.apache.commons.lang3.RandomUtils;
public class SimpleTesting {
public static void main(String[] args) {
int min_val = 10;
int max_val = 100;
RandomUtils random = new RandomUtils();
int randomNum = random.nextInt(min_val, max_val);
System.out.println(randomNum);
}
}
出力:
66
関連記事 - Java Math
- Java で配列の中央値を計算する
- Java で与えられた数の約数を見つける
- Javaの確率
- Java で数式を評価する
- Java でユークリッド距離を計算する
- Java で 2 点間の距離を計算する