本文介紹了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+++++++++++32950749682653914961387264859162260419[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+++++++++++32950749682653914961387264859162260419[Finished in 1.2s]
相關文章:
JAVA 之Random類,數組學習
java中必須瞭解的常用類
相關視頻:
全面解析Java註解