欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

java获取随机数

程序员文章站 2022-06-15 23:16:06
...
1、获取num个不大于range的随机数
/**
	 * 根据随机数个数和大小范围获取随机数list
	 * @param num 要得到的个数
	 * @param range 大小范围
	 * @return
	 */
	private List<Integer> getRandomInt(int num,int range){
		Set<Integer> set = new HashSet<Integer>();  
		Random random = new Random();  
		while (set.size() < num) {//取得num个  
			set.add(random.nextInt(range));//0-range范围数据  
		}  
		 Iterator<Integer> it = set.iterator();  
		 List<Integer> suit=new ArrayList<Integer>();  
		 for(;it.hasNext();){  
		      suit.add(it.next());//切记不能两个一起添加,这样会认为迭代2次,会报异常错误:NoSuchElementException  
		 }
		 return suit;
	}

2、获取一个
方法1  (数据类型)(最小值+Math.random()*(最大值-最小值+1)) 例:  (int)(1+Math.random()*(10-1+1)) 从1到10的int型随数 方法2  获得随机数  for (int i=0;i<30;i++)  {System.out.println((int)(1+Math.random()*10));} (int)(1+Math.random()*10)  通过java.Math包的random方法得到1-10的int随机数 公式是:最小值---最大值(整数)的随机数 (类型)最小值+Math.random()*最大值 方法3  Random ra =new Random(); for (int i=0;i<30;i++)  {System.out.println(ra.nextInt(10)+1);}  通过java.util包中的Random类的nextInt方法来得到1-10的int随机数