基于Random类的各种类型的随机数运用
random的介绍
Math类中提供了一个random()
的方法,用于随机一个从0.0~1.0之间的浮点数,当实际需求有个性化的要求时,只能通过计算获取其他类型的随机数,实际操作相对比较麻烦;因此,Java中还提供了另一个专门用于生成各种需求的随机数类型,比如,随机整数,随机浮点数,随机布尔值。
常见方法
- nextBoolean():随机一个布尔值
- nextDouble():随机一个0.0~1.0之间的double值
- nextInt():随机一个int范围内的整数值
- nextInt(int bounds):随机一个从0~bounds-1位的整数值
实例代码
package t5;
import java.util.Random;
public class RandomDemo {
private static final class RandomGeneratorHolder{
static final Random randomNumberGenerator = new Random();
}
private static final String SOURCE = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
//随机指定长度位验证码
public static String genCode(int count) {
String code = "";
for(int i = 0;i < count;i++) {
int index = RandomGeneratorHolder.randomNumberGenerator.nextInt(SOURCE.length());
code += SOURCE.charAt(index);
}
return code;
}
public static void main(String[] args) {
Random r = new Random();
//随机布尔值
boolean f = r.nextBoolean();
System.out.println(f);
//随机一个从0.0~1.0之间的浮点数
double d = r.nextDouble();
System.out.println(d);
int i = r.nextInt();
System.out.println(i);
//随机一个5以内的整数
i = r.nextInt(5);
System.out.println(i);
//随机一个5(含)~10(含)之间的整数
i = r.nextInt(6) + 5;
System.out.println(i);
//随机生成指定长度的验证码,包含0-9A-Za-z之间的字符
String code = genCode(6);
System.out.println(code);
}
}
运行结果
总结
以上就是今天要讲的内容,本文仅仅简单介绍了Random的使用,Random类的运用使我们对各种随机数使用有了很大的便利。