package com.imooc.test; import java.util.ArrayList; import java.util.List; import java.util.Random; public class RandomUtil { /** * 在一定范围内生成给定数量的不重复随机数, 如果开始到结束的数量少于num的数量会抛出数组越界的错误, * 如果相等则会返回一个排好序的数组,即从begin到end 否则返回随机数组(list),不重复,不排序 * * @author Cesar * @param begin * 开始值 * @param end * 结束值 * @param num * 要求数量 * @return */ public static List<Integer> getRandomNum(int begin, int end, int num) { int size = end-begin+1; int[] all = new int[size]; Random random = new Random(); List<Integer> result = new ArrayList<Integer>(); int x; if (size < num) { throw new ArrayIndexOutOfBoundsException("数组越界"); } else if (size == num ) { for (int i = 0; i < num; i++) { result.add(begin++); } } else { for(int i=0;i<size;i++){ all[i] = begin++; } for(int i = 0;i<num;i++){ x = random.nextInt(size);//获得坐标 result.add(all[x]); all[x] = all[size-1]; size--; } } return result; } public static void main(String[] args) { System.out.print( getRandomNum(100, 200, 20)); } }
相关推荐
本篇文章将详细讲解一个名为"RandomUtil"的随机数工具类,该工具类通常用于方便地生成各种类型的随机数,包括整数、浮点数以及指定范围内的随机数。我们将探讨其核心功能、实现原理以及如何在实际项目中使用。 首先...
5. **RandomUtil**: 提供随机数生成的工具类,可以生成指定范围内的整数、浮点数,或者随机字符串。它可能包括了Java内置的`java.util.Random`类的扩展,或者使用了其他库如Apache Commons Lang的`RandomUtils`。 ...
12. 随机数生成工具类(RandomUtil):生成指定范围内的随机数,可用于模拟数据或游戏开发。 13. 代码混淆工具类(ProguardUtil):提供代码混淆的相关配置和处理,用于保护应用的源代码安全。 14. 缓存管理工具类...
实现了java,随机数生成的工具类,可以直接拿来使用。
7. **随机数与验证码**:RandomUtil生成随机数,包括整数、浮点数、字符串等,而CodeUtil则可生成各种验证码,如数字、字母或组合型验证码。 8. **JSON操作**:JsonUtil提供了JSON对象的序列化和反序列化功能,支持...
Java工具类项目是一种常见的软件开发资源,它包含了一系列预定义的、封装好的功能模块,方便开发者在日常工作中快速调用,提高开发效率。Hutool是这个压缩包中提到的一个知名Java工具库,它集成了大量的实用工具类,...
除了以上模块,Hutool还包含了BeanUtil(对象操作)、JsonUtil(JSON操作)、RandomUtil(随机数生成)等工具类,涵盖了开发中的诸多方面。 通过阅读“Hutool+Wiki.pdf”,开发者可以深入了解每个工具类的使用方法...
本文将详细介绍一种在Java中生成随机数的全面方法,并提供了一个名为`RandomUtil`的实用工具类。 `RandomUtil`类包含了多个静态方法,用于生成不同类型的随机字符串。这些方法的核心思想都是基于`java.util.Random`...
- **随机工具**:`RandomUtil`生成随机数。 - **网络工具**:`NetUtil`处理网络相关操作,如IP地址、端口等。 - **唯一ID**:`IdUtil`生成唯一的ID。 - **压缩工具**:`ZipUtil`实现文件或目录的压缩和解压。 -...
JCT可能会包含一个RandomUtil类,提供安全的随机数生成。 8. **加密解密接口**:为了实现灵活性,JCT可能会定义一套统一的加密解密接口,允许开发者自定义加密算法或适配第三方库。 9. **代码示例和文档**:源码包...
- `RandomUtil.java`: 可能是一个工具类,提供各种随机数生成函数,用于字体选择、颜色设定等。 - 测试类和配置文件:用于测试验证码生成器的功能并进行相关设置。 总的来说,"Interference-verification-code"项目...