随机数例子 筛子点数

来源:互联网 发布:淘宝windows激活码 编辑:程序博客网 时间:2024/04/30 11:57
java.lang.Math 中的
      public static double random()
           返回带正号的 double 值,大于或等于 0.0,小于 1.0。返回值是一个伪随机 (pseudorandomly) 选
择的数,在上述范围内(大致)均匀分布。

import javax.swing.*;

public class RollDie{
   
    public static void main(String args[])
    {
        int frequency[] = {0,0,0,0,0,0};//new int[6];
       
        int temp = 0;
        for(int i=1;i<=6000;i++){
          temp = (int)(Math.random() * 6) + 1;
         
          switch(temp){
              case 1:
                frequency[0] ++;
                break;
              case 2:
                frequency[1] ++;
                break;
              case 3:
                frequency[2] ++;
                break;
              case 4:
                frequency[3] ++;
                break;
              case 5:
                frequency[4] ++;
                break;
              case 6:
                frequency[5] ++;
                break; 
            }
          }
         
          JTextArea outputArea = new JTextArea();
          String string = "Face/tFrequency";
         
          for(int i=0;i<6;i++)
          {
              string += "/n" + (i+1) + "/t" + frequency[i];
          }
         
          outputArea.setText(string);
          JOptionPane.showMessageDialog(null,outputArea,"Rolling a Die 6000 Times",JOptionPane.INFORMATION_MESSAGE);
          System.exit(0);
    }   
}

java.util.Random
此类的实例用于生成伪随机数流。此类使用 48 位的种子,使用线性同余公式对其进行修改 

    如果用相同的种子创建两个 Random 实例,则对每个实例进行相同的方法调用序列,它们将生成并返回相同的数字序列。为了保证属性的实现,为类 Random 指定了特定的算法。为了 Java 代码的完全可移植性,Java 实现必须让类 Random 使用此处所示的所有算法。但是允许 Random 类的子类使用其他算法,只要其符合所有方法的常规协定即可。

Random 类所实现的算法使用一个 protected 实用工具方法,每次调用它都可提供最多 32 个伪随机生成的位。

很多应用程序会发现 Math 类中的 random 方法更易于使用。
原创粉丝点击