こんにちは。たいら(@tairaengineer2)です。
転職を繰り返し現在4社経験している、11年目エンジニアです。
この記事では、 Javaでint型の乱数を生成できるRandom.nextIntメソッドについて
- Random.nextIntメソッドとは
- Random.nextIntメソッドを使ったサンプルプログラム
と、丁寧に解説していきます。
前提条件:実行環境について
実行環境は以下の通りです。
OS | Windows10 |
---|---|
IntelliJ IDEAのエディション | Community(無料版) |
IntelliJ IDEAのバージョン | 2021.3.2 |
プロジェクト | Javaプロジェクト |
SDK | Oracle OpenJDK version17.0.2 |
Javaを動かすためにIntelliJ IDEAを使っています。
IntelliJ IDEAのインストールは、下の記事をご参考ください。
Random.nextIntメソッドとは
Random.nextIntメソッドとは、int型の乱数を生成して返すメソッドです。
Randomクラスを使うためには
1 |
import java.util.Random; |
をインポートする必要があります。
Random.nextIntメソッドは使い方が
- パターン1:引数を指定しない場合
- パターン2:引数を指定する場合
の合計2パターンあります。
それぞれ解説します。
パターン1:引数を指定しない場合
引数を指定しないでRandom.nextIntメソッドを使った場合、int型が取り得る値が返されます。
以下のように使います。
1 2 |
Random random = new Random(); int sample = random.nextInt(); |
上記の例だと、変数sampleには
- -725332370
- 46853398
- -445575071
というような値が返されます。
パターン2:引数を指定する場合
引数を指定してRandom.nextIntメソッドを使った場合、0から指定した値マイナス1までの値が返されます。
以下のように使います。
1 2 |
Random random = new Random(); int sample = random.nextInt(5); |
上記の例だと、変数sampleには0から4までのいずれかが返されます。
では、次の章で実際に使ってみます。
Random.nextIntメソッドを解説するプログラムの概要
Random.nextIntメソッドを解説するプログラムでは
- 引数指定なし
- 引数指定あり
の2パターンでそれぞれ2回ずつ乱数を生成して、結果を表示させます。
解説で使うJavaプログラムは、Sampleプロジェクトのsampleパッケージ内にある、とします。
Javaサンプルプログラム
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
package sample; import java.util.Random; public class Sample { public static void main(String[] args) { Random random = new Random(); System.out.println("■引数指定なしで乱数生成"); System.out.println("乱数生成1回目:" + random.nextInt()); System.out.println("乱数生成2回目:" + random.nextInt()); System.out.println("■引数指定ありで乱数生成"); System.out.println("乱数生成1回目:" + random.nextInt(10)); System.out.println("乱数生成2回目:" + random.nextInt(10)); } } |
実行結果
Javaプログラムを実行します。
実行のやり方は
- プログラムを右クリックして実行
- 実行タブから実行
- ガターから実行
の3種類あるので、いずれかで実行します。
詳しい解説は以下の記事をご参考ください。
1 2 3 4 5 6 |
■引数指定なしで乱数生成 乱数生成1回目:1338210704 乱数生成2回目:2072847741 ■引数指定ありで乱数生成 乱数生成1回目:1 乱数生成2回目:9 |
引数の指定ありなしに沿った乱数が生成できていることが確認できました。
まとめ:Random.nextIntメソッドを使ってみよう!
以上がJavaのRandom.nextIntメソッドについての解説でした!
あなたのご参考になったのなら、とても嬉しいです(*´▽`*)
ではでは~(・ω・)ノシ
【Java】乱数を生成できるMath.randomメソッドについて解説します
【Java】double型の乱数を生成できるRandom.nextDoubleメソッドについて解説します
【Java】long型の乱数を生成できるRandom.nextLongメソッドについて解説します
コメント