本文实例总结了Java编程实现生成给定范围内不重复随机数的方法。分享给大家供大家参考,具体如下:
在Java中的数学类中存在一个随机的()方法,该方法默认生成0.0到1.0之间的双型随机数,经过稍微处理,就可以产生我们需要的随机数以及随机字符。
除了数学类中随机的()方法之外,java.util.Random类也可以用来生成随机数;下面分别举例(用不同的方法生成双色球号码)说明:
<强> 1。math . random()方法强>
生成随机数:
包装测试; 进口java.util.SortedSet; 进口java.util.TreeSet; 公开课MathRandom { 静态SortedSet设置=new TreeSet (); 公共静态int randomSet(双m,双n) { int num=(int) m + (int) (math . random () * (n - m)); 返回num; } 公共静态孔隙shuangSe (int, int num1 num2) { for (int i=0;我& lt;num1;我+ +){ set.add (randomSet (1、33)); } 如果(set.size () & lt;num2) { shuangSe (num2 - set.size (), num2); } } 公共静态void main (String [] args) { shuangSe (6,6); System.out.print(组); system . out。println (" + randomSet (16)); } } >之前运行结果(随机):
(3、13、17、21、23、25)2 >之前生成随机字符:
包装测试; 公开课MathRandomChar { 公共静态字符getRandomChar (char c1, char c2) { 返回(char) (c1 + math . random() *(路径c1 + 1)); } 公共静态void main (String [] args) { system . out。println (“a - z之间的任意字符:“+ getRandomChar (' a ', ' z ')); } } >之前运行结果(随机):
所有之间的任意字符:g >之前<强> 2。java.util.Random方法强>
方法一:循环加递归:
包装测试; 进口java.util.Random; 进口java.util.SortedSet; 进口java.util.TreeSet; 公共类测试{ 静态随机跑=new随机(); 静态SortedSet设置=new TreeSet (); 公共静态孔隙randomSet (int, int) { for (int i=0;我& lt;n;我+ +){ set.add (ran.nextInt (33) + 1); } 如果(set.size () & lt;米){ randomSet (m - set.size (), m); } } 公共静态void main (String [] args) { randomSet (6,6); System.out.print(组); system . out。println (" + (ran.nextInt (16) + 1)); } } >之前运行结果(随机):
[1、15、18、29、30、31日)13方法二:虽然循环
包装测试; 进口java.util.Random; 进口java.util.Set; 进口java.util.TreeSet; 公开课ShuangSeQiu { 公共静态void main (String [] args) { 随机跑=new随机(); Set设置=new TreeSet<在(); 而(真){ int=ran.nextInt (33) + 1; set.add(一个); 如果(set.size()在5){ System.out.print(组); 打破; } } system . out。println (" + (ran.nextInt (16) + 1)); } } >之前 运行结果(随机):
[2、11、12、16日,23日,26]7
http://tools.jb51.net/aideddesign/suijishu
http://tools.jb51.net/aideddesign/rnd_password
http://tools.jb51.net/password/CreateStrongPassword
更多关于java算法相关内容感兴趣的读者可查看本站专题:《java数据结构与算法教程》、《java字符与字符串操作技巧总结》,《java操作DOM节点技巧总结》,《java文件与目录操作技巧汇总》和《java缓存操作技巧汇总》
希望本文所述对大家java程序设计有所帮助。
Java编程实现生成给定范围内不重复随机数的方法小结