【Java】ランダム値の生成
ゲーム制作する過程でRandomクラスを使用したくなってきたので、一応使用する可能性のあるメソッドだけ確認しておきます。
小数の範囲で乱数を生成する
Randomクラスをインスタンス化し、nextDoubleやnextFloatメソッドを呼び出します。
もちろん呼び出すごとに内容が変動します。
- import java.util.Random;
- public class Test{
- public static void main(String[] args) {
- Random rand = new Random();
- System.out.println(rand.nextDouble());
- }
- }
0.272089452972459
真偽値の乱数を生成する
Randomクラスをインスタンス化し、nextBooleanメソッドを呼び出します。
- import java.util.Random;
- public class Test{
- public static void main(String[] args) {
- Random rand = new Random();
- System.out.println(rand.nextBoolean());
- }
- }
true
整数の乱数を生成する
Randomクラスをインスタンス化し、nextIntやnextLongメソッド等を呼び出します。
- import java.util.Random;
- public class Test{
- public static void main(String[] args) {
- Random rand = new Random();
- System.out.println(rand.nextInt());
- }
- }
106358325
整数の自由な範囲で乱数を生成する
ランダム値は指定した範囲を生成したいことが多いのでnextIntメソッドに引数を指定して範囲を指定してみましょう。
例えばnextInt(10)であれば0~9の間で乱数が生成されます。
- import java.util.Random;
- public class Test{
- public static void main(String[] args) {
- Random rand = new Random();
- System.out.println(rand.nextInt(10));
- }
- }
8
さらに値を100~150までを生成したい場合や-25~-10の間を生成したい場合にも対応できます。
- import java.util.Random;
- public class Test{
- public static void main(String[] args) {
- Random rand = new Random();
- //100~150の間の乱数を生成する
- System.out.println(rand.nextInt(51)+100);
- //-25~-10の間の乱数を生成する
- System.out.println(rand.nextInt(16)-25);
- }
- }
125
-24
ディスカッション
コメント一覧
まだ、コメントがありません