`
junlong750
  • 浏览: 22585 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

RandomUtil随机数工具类

阅读更多
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"的随机数工具类,该工具类通常用于方便地生成各种类型的随机数,包括整数、浮点数以及指定范围内的随机数。我们将探讨其核心功能、实现原理以及如何在实际项目中使用。 首先...

    java开发,30个常用工具类总结,全部来自项目实践中用到的工具类

    5. **RandomUtil**: 提供随机数生成的工具类,可以生成指定范围内的整数、浮点数,或者随机字符串。它可能包括了Java内置的`java.util.Random`类的扩展,或者使用了其他库如Apache Commons Lang的`RandomUtils`。 ...

    Android开发常见的136个工具类.rar

    12. 随机数生成工具类(RandomUtil):生成指定范围内的随机数,可用于模拟数据或游戏开发。 13. 代码混淆工具类(ProguardUtil):提供代码混淆的相关配置和处理,用于保护应用的源代码安全。 14. 缓存管理工具类...

    java RandomUtil

    实现了java,随机数生成的工具类,可以直接拿来使用。

    hutool工具类,集成了大部分util工具,减少开发代码.rar

    7. **随机数与验证码**:RandomUtil生成随机数,包括整数、浮点数、字符串等,而CodeUtil则可生成各种验证码,如数字、字母或组合型验证码。 8. **JSON操作**:JsonUtil提供了JSON对象的序列化和反序列化功能,支持...

    JAVA工具类项目(用于平时的开发)

    Java工具类项目是一种常见的软件开发资源,它包含了一系列预定义的、封装好的功能模块,方便开发者在日常工作中快速调用,提高开发效率。Hutool是这个压缩包中提到的一个知名Java工具库,它集成了大量的实用工具类,...

    Hutool+Wiki.zip

    除了以上模块,Hutool还包含了BeanUtil(对象操作)、JsonUtil(JSON操作)、RandomUtil(随机数生成)等工具类,涵盖了开发中的诸多方面。 通过阅读“Hutool+Wiki.pdf”,开发者可以深入了解每个工具类的使用方法...

    史上最全的java随机数生成算法分享

    本文将详细介绍一种在Java中生成随机数的全面方法,并提供了一个名为`RandomUtil`的实用工具类。 `RandomUtil`类包含了多个静态方法,用于生成不同类型的随机字符串。这些方法的核心思想都是基于`java.util.Random`...

    Hutool的api等可参考的文档

    - **随机工具**:`RandomUtil`生成随机数。 - **网络工具**:`NetUtil`处理网络相关操作,如IP地址、端口等。 - **唯一ID**:`IdUtil`生成唯一的ID。 - **压缩工具**:`ZipUtil`实现文件或目录的压缩和解压。 -...

    基于Java的加密解密工具集 JCT v1.0源码包.zip

    JCT可能会包含一个RandomUtil类,提供安全的随机数生成。 8. **加密解密接口**:为了实现灵活性,JCT可能会定义一套统一的加密解密接口,允许开发者自定义加密算法或适配第三方库。 9. **代码示例和文档**:源码包...

    Interference-verification-code

    - `RandomUtil.java`: 可能是一个工具类,提供各种随机数生成函数,用于字体选择、颜色设定等。 - 测试类和配置文件:用于测试验证码生成器的功能并进行相关设置。 总的来说,"Interference-verification-code"项目...

Global site tag (gtag.js) - Google Analytics