@zhuanxu
2017-12-29T07:04:08.000000Z
字数 1403
阅读 2048
java-知识点
在java中产生随机数主要靠:java.lang.Math 和 java.util.Random 这两个类。
下面介绍java中不同场景要求下随机数产生的方法。
1.产生0-1之间的数
public static double getRandomNumber(){double x = Math.random();return x;}
2.产生min-max之间的数
public static double getRandomDoubleBetweenRange(double min, double max){double x = (Math.random()*((max-min)+1))+min;return x;}
3.产生min-max之间的整数
public static int getRandomIntegerBetweenRange(double min, double max){int x = (int)(Math.random()*((max-min)+1))+min;return x;}
1.产生[0,maxInt)之间的整数,左闭右开
public static int generateRandomInt(int upperRange){Random random = new Random();return random.nextInt(upperRange);}
2.产生[min,max]之间的整数
public static int generateRandomIntIntRange(int min, int max) {Random r = new Random();return r.nextInt((max - min) + 1) + min;}
3.产生0-1之间的浮点数
public static double generateRandomDouble(){Random random = new Random();return random.nextDouble();}public static float generateRandomFloat(){Random random = new Random();return random.nextFloat();}
1.产生[min,max]之间的整数
public static int getRandomNumberInts(int min, int max){Random random = new Random();return random.ints(min,(max+1)).findFirst().getAsInt();}
2.产生n个整数
public static void getStreamOfRandomInts(int num) {Random random = new Random();random.ints(num).sorted().forEach(System.out::println);}
3.产生n个[min-max]之间的整数
public static void getStreamOfRandomIntsWithRange(int num, int min, int max) {Random random = new Random();random.ints(num,min, max+1).sorted().forEach(System.out::println);}
