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);