Javaの乱数生成

Javaの乱数は「Random.nextInt(6)」とすると0-5のサイコロ風の値が簡単に取得できます。
色々な範囲の乱数の作り方と、確率の判定のサンプルを作ってみました。

実行結果

0-5 サイコロ風:3, 1, 1, 3, 4, 1, 0, 5, 2, 4, 
1-6 サイコロ風その2:2, 1, 1, 5, 5, 3, 4, 2, 1, 4, 
0-99 1%刻み:88, 42, 53, 23, 84, 69, 96, 5, 19, 94, 
0-999 0.1%刻み:810, 799, 476, 408, 329, 482, 933, 248, 572, 306, 
0-359 乱数で角度を求める255, 115, 229, 111, 229, 213, 11, 21, 72, 211, 
20%の確率を判定
false(84), false(71), false(51), true(18), true(6), false(23), true(15), false(27), false(64), false(82), 
22.5%の確率を判定
false(258), false(626), false(601), false(296), true(172), false(866), false(553), false(664), false(897), true(109), 
 

サンプルダウンロード


サンプルソース

import java.util.Date;
import java.util.Random;
 
// Javaの乱数生成
public class RandomSample {
 
	public static void main(String[] args) {
		int r = 0;
 
		// 乱数を使う準備
		Random random = new Random(); // Random
		random.setSeed(new Date().getTime());
 
		System.out.print("0-5 サイコロ風:");
		for (int i = 0; i < 10; i++) {
			r = random.nextInt(6);
			System.out.print(r);
			System.out.print(", ");
		}
 
		System.out.print("\n1-6 サイコロ風その2:");
		for (int i = 0; i < 10; i++) {
			r = random.nextInt(6) + 1;
			System.out.print(r);
			System.out.print(", ");
		}
 
		System.out.print("\n0-99 1%刻み:");
		for (int i = 0; i < 10; i++) {
			r = random.nextInt(100);
			System.out.print(r);
			System.out.print(", ");
		}
 
		System.out.print("\n0-999 0.1%刻み:");
		for (int i = 0; i < 10; i++) {
			r = random.nextInt(1000);
			System.out.print(r);
			System.out.print(", ");
		}
 
		System.out.print("\n0-359 乱数で角度を求める");
		for (int i = 0; i < 10; i++) {
			r = random.nextInt(360);
			System.out.print(r);
			System.out.print(", ");
		}
 
		boolean b = false;
		System.out.println("\n20%の確率を判定");
		for (int i = 0; i < 10; i++) {
			r = random.nextInt(99);
			b = r < 20;
			System.out.print(b + "(" + r + ")");
			System.out.print(", ");
		}
 
		System.out.println("\n22.5%の確率を判定");
		for (int i = 0; i < 10; i++) {
			r = random.nextInt(999);
			b = r < 225;
			System.out.print(b + "(" + r + ")");
			System.out.print(", ");
		}
	}
 
}
 
 
最終更新:2012年11月03日 17:16
添付ファイル