【工具类】 Hutool 中用于生成随机数的工具类

打印 上一主题 下一主题

主题 555|帖子 555|积分 1665

博主介绍:✌全网粉丝22W+,CSDN博客专家、Java范畴优质创作者,掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术范畴✌
  技术范围:SpringBoot、SpringCloud、Vue、SSM、HTML、Nodejs、Python、MySQL、PostgreSQL、大数据、物联网、机器学习等设计与开发。
  感兴趣的可以先关注收藏起来,在工作中、生活上等遇到相关题目都可以给我留言咨询,盼望帮助更多的人。
  
  
Hutool 是一个 Java 工具类库,提供了丰富的工具方法,其中 RandomUtil 是 Hutool 中用于生成随机数的工具类。它封装了常见的随机数生成需求,使用起来非常方便。
以下是 RandomUtil 的常用方法及其使用示例:
一、添加 Hutool 依赖

起首,确保你的项目中引入了 Hutool 依赖。假如使用 Maven,可以在 pom.xml 中添加以下依赖
  1. <dependency>
  2.     <groupId>cn.hutool</groupId>
  3.     <artifactId>hutool-all</artifactId>
  4.     <version>5.8.20</version> <!-- 请使用最新版本 -->
  5. </dependency>
复制代码
二、RandomUtil 常用方法

2.1 生成随机整数



  • RandomUtil.randomInt(int limit):生成 [0, limit) 范围内的随机整数。
  • RandomUtil.randomInt(int min, int max):生成 [min, max) 范围内的随机整数。
  1. import cn.hutool.core.util.RandomUtil;
  2. public class RandomUtilExample {
  3.     public static void main(String[] args) {
  4.         // 生成 [0, 100) 的随机整数
  5.         int randomNumber1 = RandomUtil.randomInt(100);
  6.         System.out.println("Random number 1: " + randomNumber1);
  7.         // 生成 [10, 20) 的随机整数
  8.         int randomNumber2 = RandomUtil.randomInt(10, 20);
  9.         System.out.println("Random number 2: " + randomNumber2);
  10.     }
  11. }
复制代码
2.2 生成随机长整数



  • RandomUtil.randomLong(long limit):生成 [0, limit) 范围内的随机长整数。
  • RandomUtil.randomLong(long min, long max):生成 [min, max) 范围内的随机长整数。
  1. long randomLong1 = RandomUtil.randomLong(1000L);
  2. System.out.println("Random long 1: " + randomLong1);
  3. long randomLong2 = RandomUtil.randomLong(1000L, 2000L);
  4. System.out.println("Random long 2: " + randomLong2);
复制代码
2.3 生成随机浮点数



  • RandomUtil.randomDouble(double limit):生成 [0, limit) 范围内的随机浮点数。
  • RandomUtil.randomDouble(double min, double max):生成 [min, max) 范围内的随机浮点数。
  1. double randomDouble1 = RandomUtil.randomDouble(100.0);
  2. System.out.println("Random double 1: " + randomDouble1);
  3. double randomDouble2 = RandomUtil.randomDouble(10.0, 20.0);
  4. System.out.println("Random double 2: " + randomDouble2);
复制代码
2.4 生成随机布尔值



  • RandomUtil.randomBoolean():生成随机的 true 或 false。
  1. boolean randomBoolean = RandomUtil.randomBoolean();
  2. System.out.println("Random boolean: " + randomBoolean);
复制代码
2.5 生成随机字符串



  • RandomUtil.randomString(int length):生成指定长度的随机字符串(包含字母和数字)。
  • RandomUtil.randomNumbers(int length):生成指定长度的随机数字字符串。
  • RandomUtil.randomLetters(int length):生成指定长度的随机字母字符串。
  1. String randomString = RandomUtil.randomString(10);
  2. System.out.println("Random string: " + randomString);
  3. String randomNumbers = RandomUtil.randomNumbers(6);
  4. System.out.println("Random numbers: " + randomNumbers);
  5. String randomLetters = RandomUtil.randomLetters(8);
  6. System.out.println("Random letters: " + randomLetters);
复制代码
2.6 生成随机字节数组



  • RandomUtil.randomBytes(int length):生成指定长度的随机字节数组。
  1. byte[] randomBytes = RandomUtil.randomBytes(10);
  2. System.out.println("Random bytes: " + new String(randomBytes));
复制代码
2.7 从集合中随机选择元素



  • RandomUtil.randomEle(List<T> list):从列表中随机选择一个元素。
  • RandomUtil.randomEles(List<T> list, int count):从列表中随机选择多个元素。
  1. import java.util.Arrays;
  2. import java.util.List;
  3. List<String> list = Arrays.asList("Apple", "Banana", "Cherry", "Date");
  4. String randomElement = RandomUtil.randomEle(list);
  5. System.out.println("Random element: " + randomElement);
  6. List<String> randomElements = RandomUtil.randomEles(list, 2);
  7. System.out.println("Random elements: " + randomElements);
复制代码
2.8 生成随机 UUID



  • RandomUtil.randomUUID():生成随机的 UUID。
  1. String randomUUID = RandomUtil.randomUUID();
  2. System.out.println("Random UUID: " + randomUUID);
复制代码
三、高级用法

RandomUtil 还支持自定义随机数生成器(Random 对象),以及生成随机日期、随机颜色等功能。
  1. import java.util.Random;
  2. // 使用自定义 Random 对象
  3. Random customRandom = new Random();
  4. int customRandomNumber = RandomUtil.randomInt(customRandom, 10, 20);
  5. System.out.println("Custom random number: " + customRandomNumber);
复制代码
四、总结

RandomUtil 是 Hutool 中非常实用的工具类,能够满意大多数随机数生成的需求。它的 API 设计简洁,使用方便,适合在 Java 项目中快速实现随机数相关的功能。假如你必要更复杂的随机数生成逻辑,可以结合 Java 原生的 Random 类或 ThreadLocalRandom 类来实现。

   好了,今天禀享到这里。盼望你喜好这次的探索之旅!不要忘记 “点赞” 和 “关注” 哦,我们下次见!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

星球的眼睛

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表