很多时候我们需要根据概率来确定某些事件是否发生。Java提供了Random类来产生随机数。
关于Random与MathRandom的详细用法此处不赘述,这里根据古典概型的定义,提供一种概率准确度的测试,代码如下:
import java.util.Random;
import org.junit.Test;
public class test {
double true_sum = 0;//记录命中次数
public void testProbability(){
Random random = new Random();
int value = random.nextInt(100);
if(value >= 0 && value < 60)
true_sum += 1;
}
@Test
public void test(){
for(int i = 0; i < 100000; i++){
this.testProbability();
}
System.out.println(String.valueOf(true_sum/100000));
}
}
运行上述代码会发现,输出结果稳定在0.6左右,当改变value的值,结果会随之改变,但均会稳定在一个确定的概率值附近,由此,我们可以通过这种方式实现概率事件。
网友评论