ホームページ  >  記事  >  Java  >  Java共通クラス - Randomクラスの利用事例分析

Java共通クラス - Randomクラスの利用事例分析

php是最好的语言
php是最好的语言オリジナル
2018-08-06 11:23:421907ブラウズ

この記事では、一般的に使用される Java クラスである Random クラスの使用法を紹介します。以下は、コードのコメントに追加の説明はありません。

import java.util.Random;public class random1 {
    public static void main(String[] args){
        //两种构造函数
        Random r1=new Random();
        //Random r2=new Random(120); 使用单个 long 种子创建一个新的随机数生成器。

        //System.out.println(r1.next(2));返回值为保护类型
        //System.out.println(r2.next(2));
        System.out.println(r1.nextBoolean());//返回下一个伪随机数,它是取自此随机数生成器序列的均匀分布的 boolean 值。
        System.out.println(r1.nextBoolean());
        System.out.println("+++++++++++");
        byte[] by1=new byte[5];
        byte[] by2=new byte[5];
        r1.nextBytes(by1);//生成随机字节并将其置于用户提供的 byte 数组中。
        r1.nextBytes(by2);
        for(int i=0;i<by1.length;i++){
            System.out.print(by1[i]+" ");
        }
        System.out.println();
        for(int j=0;j<by2.length;j++){
            System.out.print(by2[j]+" ");
        }
        System.out.println();
        System.out.println("+++++++++++");

        //返回下一个伪随机数,它是取自此随机数生成器序列的、在 0.0 和 1.0 之间均匀分布的 double 值。
        System.out.println(r1.nextDouble());
        System.out.println(r1.nextDouble());
        System.out.println("+++++++++++");
        //返回下一个伪随机数,它是取自此随机数生成器序列的、在 0.0 和 1.0 之间均匀分布的 float 值。
        System.out.println(r1.nextFloat());
        System.out.println(r1.nextFloat());
        System.out.println("+++++++++++");
        //返回下一个伪随机数,它是取自此随机数生成器序列的、呈高斯(“正态”)分布的 double 值,其平均值是 0.0,标准差是 1.0。
        System.out.println(r1.nextGaussian());
        System.out.println(r1.nextGaussian());
        System.out.println("+++++++++++");
        //返回下一个伪随机数,它是此随机数生成器的序列中均匀分布的 int 值。
        System.out.println(r1.nextInt());
        System.out.println(r1.nextInt());
        System.out.println("+++++++++++");
        //返回一个伪随机数,它是取自此随机数生成器序列的、在 0(包括)和指定值(不包括)之间均匀分布的 int 值。
        System.out.println(r1.nextInt(100));
        System.out.println(r1.nextInt(50));
        System.out.println("+++++++++++");
        //返回下一个伪随机数,它是取自此随机数生成器序列的均匀分布的 long 值
        System.out.println(r1.nextLong());
        System.out.println(r1.nextLong());

        //r1.setSeed(10);使用单个 long 种子设置此随机数生成器的种子。


    }
}

実行結果:

Compiling random1.java.......
-----------OUTPUT-----------
falsefalse
+++++++++++-55 -112 41 -78 93 
54 127 -93 -22 120 
+++++++++++0.69656134440266490.06445584272260563
+++++++++++0.285779950.8657566
+++++++++++-0.15436582029316171.4500847476555192
+++++++++++1824132073-436413982
+++++++++++2921
+++++++++++3295074968265391496
1387264859162260419[Finished in 1.2s]
import java.util.Random;public class random1 {
    public static void main(String[] args){
        //两种构造函数
        Random r1=new Random();
        //Random r2=new Random(120); 使用单个 long 种子创建一个新的随机数生成器。

        //System.out.println(r1.next(2));返回值为保护类型
        //System.out.println(r2.next(2));
        System.out.println(r1.nextBoolean());//返回下一个伪随机数,它是取自此随机数生成器序列的均匀分布的 boolean 值。
        System.out.println(r1.nextBoolean());
        System.out.println("+++++++++++");
        byte[] by1=new byte[5];
        byte[] by2=new byte[5];
        r1.nextBytes(by1);//生成随机字节并将其置于用户提供的 byte 数组中。
        r1.nextBytes(by2);
        for(int i=0;i<by1.length;i++){
            System.out.print(by1[i]+" ");
        }
        System.out.println();
        for(int j=0;j<by2.length;j++){
            System.out.print(by2[j]+" ");
        }
        System.out.println();
        System.out.println("+++++++++++");

        //返回下一个伪随机数,它是取自此随机数生成器序列的、在 0.0 和 1.0 之间均匀分布的 double 值。
        System.out.println(r1.nextDouble());
        System.out.println(r1.nextDouble());
        System.out.println("+++++++++++");
        //返回下一个伪随机数,它是取自此随机数生成器序列的、在 0.0 和 1.0 之间均匀分布的 float 值。
        System.out.println(r1.nextFloat());
        System.out.println(r1.nextFloat());
        System.out.println("+++++++++++");
        //返回下一个伪随机数,它是取自此随机数生成器序列的、呈高斯(“正态”)分布的 double 值,其平均值是 0.0,标准差是 1.0。
        System.out.println(r1.nextGaussian());
        System.out.println(r1.nextGaussian());
        System.out.println("+++++++++++");
        //返回下一个伪随机数,它是此随机数生成器的序列中均匀分布的 int 值。
        System.out.println(r1.nextInt());
        System.out.println(r1.nextInt());
        System.out.println("+++++++++++");
        //返回一个伪随机数,它是取自此随机数生成器序列的、在 0(包括)和指定值(不包括)之间均匀分布的 int 值。
        System.out.println(r1.nextInt(100));
        System.out.println(r1.nextInt(50));
        System.out.println("+++++++++++");
        //返回下一个伪随机数,它是取自此随机数生成器序列的均匀分布的 long 值
        System.out.println(r1.nextLong());
        System.out.println(r1.nextLong());

        //r1.setSeed(10);使用单个 long 种子设置此随机数生成器的种子。


    }
}

実行結果:

Compiling random1.java.......
-----------OUTPUT-----------
falsefalse
+++++++++++-55 -112 41 -78 93 
54 127 -93 -22 120 
+++++++++++0.69656134440266490.06445584272260563
+++++++++++0.285779950.8657566
+++++++++++-0.15436582029316171.4500847476555192
+++++++++++1824132073-436413982
+++++++++++2921
+++++++++++3295074968265391496
1387264859162260419[Finished in 1.2s]

関連記事:

JAVAのRandomクラス、配列学習

Javaで理解しておくべき共通クラス

関連動画:

総合Java アノテーションを解析します

以上がJava共通クラス - Randomクラスの利用事例分析の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。