conanan's blog conanan's blog
首页
关于
  • 分类
  • 标签
  • 归档
  • Java
  • Java Web
  • 工具

    • Maven
  • MySQL
  • Redis
  • Git
  • Vim
  • Nginx
  • Docker
GitHub

Evan Xu

前端界的小学生
首页
关于
  • 分类
  • 标签
  • 归档
  • Java
  • Java Web
  • 工具

    • Maven
  • MySQL
  • Redis
  • Git
  • Vim
  • Nginx
  • Docker
GitHub
  • 基础

  • API

    • 4 API-1 字符串
    • 4 API-2 时间
    • 4 API-3 时间-old
    • 4 API-4 比较器
    • 4 API-5 精确数据类型
    • 4 API-6 Math
    • 4 API-7 Random
    • 4 API-8 System
    • 4 API-9 Object
    • 4 API-习题
    • 13 Lambda
    • 14 Stream API
    • 15 Optional
  • Container

  • 多线程

  • 16 9,10,11新特性
  • 17 Test
  • 18 设计原则&设计模式
  • JDBC
  • Java
  • API
conanan
2020-12-14

4 API-7 Random

# Random(java.util)

  • 生成随机数的两个构造方法

    • Random() 创建一个伪随机数生成器,因为种子随机(当前时间)所以每次运行产生随机数不同
    • Random(long seed) 创建一个伪随机数生成器,因为种子一定,每次运行产生随机数序列相同
  • Random类的方法

    • int nextInt()/nextLong()/nextFloat()/nextDouble()/nextBoolean() 随机生成~类型所有范围内的随机数
    • int nextInt(int n) 随机生成[0,n)之间的随机数
  • 生成任意范围内的随机数[]

    Random r = new Random();
    r.nextInt(end-start+1)+start;//+1是为了保留右极限
    
    1
    2
  • 每次生成10组6位随机验证码

    char[] chs = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'A', 'B', 'C', 'D' };
    int len = chs.length;
    Random r = new Random();
    for (int i = 0; i < 10; i++) { //10组
        System.out.print("随机验证码:");
        for (int j = 0; j < 6; j++) { //6位
            int index = r.nextInt(len);
            System.out.print(chs[index]);
        }
        System.out.println();
    }
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
编辑
上次更新: 2021/06/21, 15:45:42
4 API-6 Math
4 API-8 System

← 4 API-6 Math 4 API-8 System→

最近更新
01
线程生命周期
07-06
02
线程安全理论
06-24
03
并发简史
06-24
更多文章>
Theme by Vdoing | Copyright © 2019-2021 Evan Xu | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式
×