java中Random的使用
Random常用来创建一些随机数,下面就Random的具体使用方法进行总结
首先new一个新的对象
Random random = new Random();
//可以通过random对象定义多种类型的随机数
例如
random.ints()
random.doubles()
random.longs()
//生成随机数列表,存放到数组中
int[] arr = random.ints(10).toArray(); //生成10个int范围类的个数。
在Random中,有一个seed参数,当设定了seed参数后,seed传值相同的时候运行出来的随机数是相同的
例如:
Random random1 = new Random( 20); Random random2 = new Random( 20);
//即random1与random2运行出来的随机数的值是相同的
//通过random方法创建指定类型指定范围的随机数
random.nextInt(); //创建一个正整数 //1.想要生成一个[0,n)的整数 例如:生成[0,10) random.nextInt(10); // 2. 想生成范围在[0,n]的整数 例如:生成[0,10] random.nextInt(11); //3.想生成范围在[m,n]的整数, n > m 例如:生成[5,10] 即[0,5] + 5 int a = random.nextInt(6) + 5; a = random.nextInt() % (6) + 5; //4.想生成范围在(m,n)的整数 例如:生成(5,10)即[0,4) + 6 a = random.nextInt(4) + 6; a = random.nextInt() % (4) + 6; //其他类型数据类似 random.nextLong(); //随机生成long类型范围的整数 random.nextFloat(); //随机生成[0, 1.0)区间的小数 random.nextDouble();//随机生成[0, 1.0)区间的小数
对生成随机数的数量以及范围进行限定
其中可以通过随机数初始化中设定streamSize以及使用.limit()这两种方法对随机数的个数进行设定
例如:
//输出随机数并且排序 random.ints().limit(10).sorted().forEach(System.out::println); System.out.println(); //或者 random.ints(10).sorted().forEach(System.out::println); //限制随机数的范围,生成0-100内的5个随机数 random.ints(0,100).limit(5).sorted().forEach(System.out::println);