乱数発生機構の使用例

乱数発生機構は呼び出すたびに指定された範囲の1つの値を返す関数である。

List 1 乱数発生機構をmain()中から複数回呼び出した例

import java.util.Random;

public class XXXX {
    public static void main(String[] args) {
        XXXX mainprg = new XXXX();
    }
 
    XXXX() {
        int RandomNumber;
        int i;
        Random rnd = new Random();
        for (i=0; i<10; i++) {
            RandomNumber=rnd.nextInt(100)+1; /*これで1~100の乱数となる*/
            System.out.printf("%d\n", RandomNumber);
        }
    }
}

/********************* 実行結果 ********************
83
8
94
55
38
84
38
97
28
44
****************************************************/

解説
乱数発生機構は呼び出されるたびに乱数(気まぐれに選んだ数)を発生させているのがわかる。


List 2 '0'から'9'の文字コードを乱数として得る

import java.util.Random;

public class XXXX {
    public static void main(String[] args) {
        XXXX mainprg = new XXXX();
    }
 
    XXXX() {
        int RandomNumber;
        int i;
        char ch;
        Random rnd = new Random();
        for (i=0; i<10; i++) {
            RandomNumber=rnd.nextInt(10); /*これで0~9の乱数となる*/
            ch=(char)('0'+RandomNumber);
            System.out.printf("%d %c %02x\n", RandomNumber, ch, (int)ch);
        }
    }
}

/********************* 実行結果 ********************
0 0 30
4 4 34
2 2 32
8 8 38
6 6 36
1 1 31
5 5 35
3 3 33
5 5 35
3 3 33
****************************************************/

解説
数字の文字コードは,'0','1','2',..,'9'は16進表記で0x30,0x31,0x32,..,0x39である。
そこで0〜9の数値に,'0'の文字コードを加えると,数字を表す文字コードとなるのがわかる。