现在的位置: 首页 > 综合 > 正文

浅谈Java中的几种随机数

2013年10月21日 ⁄ 综合 ⁄ 共 942字 ⁄ 字号 评论关闭
/**
 * 浅谈Java中的几种随机数
 * 英文出自:http://www.summa-tech.com/blog/2012/03/14/the-several-flavors-of-random-in-java/
 * 译文出自:http://www.oschina.net/question/157182_45274
 */
public class Test{
        public static void main(String[] args){
                //1. 我们从书本上学到什么?
                System.out.println("//---------------------------------");
                System.out.println("产生一个0到1之间的双精度浮点数随机数:"+java.lang.Math.random());
                System.out.println("要产生0.0和10.0之间的双精度浮点数:"+java.lang.Math.random() * 10);
                System.out.println("产生0和10之间的整数:"+java.lang.Math.round(java.lang.Math.random() * 10));

                //2.进阶
                //通过阅读Math.random()的源码,或者干脆利用IDE的自动完成功能,开发人员可以很容易发现,java.lang.Math.random()使用一个内部的随机生成对象 - 一个很强大的对象可以灵活的随机产生:布尔值、所有数字类型,甚至是高斯分布。例如:");
                System.out.println("\n\n//---------------------------------");
                System.out.println(new java.util.Random().nextInt(10));
                
                //3.并发
                //期待已久的Java 7提供了一种新的方式来产生随机数:
                System.out.println("\n\n//---------------------------------");
                System.out.println("java7"+java.util.concurrent.ThreadLocalRandom.current().nextInt(10) );
        
}
}

抱歉!评论已关闭.