java之随机数(Random)理解及应用(自用)

什么是Random?

 1.是java中API的java.util包中的一个产生随机数的类;

2.Random类中的随机算法是伪随机的,也就是说他的随机数也是有一定的规则的。

 Random的应用场景

 Random的大部分应用场景是用在网站的各种验证码。

 Random的构造方法

1.Random random =new Random()

        创建一个新的随机数生成器。

2.Random random =new Random(long seed)

        使用单个 long种子创建一个新的随机数生成器。每次生成的随机数相同。

public static void main(String[] args) {
        Random random =new Random(3);
        for (int i = 0; i < 10; i++) {
            int num = random.nextInt(20);
            System.out.print(num+",");
        }
        System.out.println("\n");
        Random random1 =new Random(3);
        for (int i = 0; i < 10; i++) {
            int num = random1.nextInt(20);
            System.out.print(num+",");
        }
    }

上面是使用Random random =new Random(long seed)来创建的随机数。根据代码来看也是通俗易懂的。也就是说使用带参数的构造方法来创建参数可以生成相同的随机数。

Random的常用方法

1.nextInt():生成一个随机的整数

2.nextInt(int n):生成一个小于n但是大于等于0的整数。

3.nextLong():生成一个随机的长整数

4.nextFloat():生成一个随机的单精度数

5.nextDouble():获取一个随机的双精度数。

6.nextBoolean():获取一个随机的布尔值。

使用Random创建验证码的例子

需求:在0123456789abcdefghijklmnopqrstuvwsyz中产生4位的随机数。

public static void main(String[] args) {
        //声明随机数的范围
       String verC ="0123456789abcdefghijklmnopqrstuvwsyz";
       //使用StringBuilder来进行追加数据
        StringBuilder stringBuilder = new StringBuilder(4);
        //实例化Random
        Random random = new Random();
        //将字符串转为数组,为for循环中根据索引寻找数值做备用
        char[] chars = verC.toCharArray();
        for (int i = 0; i < 4; i++) {
            //获取到[0-36)之间的一个整数数值.
            int i1 = random.nextInt(36);
            //使用数值在数组中进行查询相应的数据并追加带StringBuilder中。
            stringBuilder.append(chars[i1]);
        }
        System.out.println("生成的4位随机数位:"+stringBuilder);

    }

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值