浅析Java随机数与定时器
程序员文章站
2022-05-03 10:26:13
产生90-100的重复的随机数:
public class randomtest {
public static void main(string[] ar...
产生90-100的重复的随机数:
public class randomtest { public static void main(string[] args){ /* * math.random()方法默认double类型,所以需要强制转换为int */ int x=(int)(math.random()*(100-90+1)+90); //(max-min+1)+min=min-max system.out.println(x); } }
产生90-100不重复的随机数:
import java.util.hashset; import java.util.random; import java.util.set; public class randomtest { public static void main(string args[]){ int max=100; //最大值 int min=90; //最小值 int count=max-min; //随机数个数 random random = new random(); set<integer> set=new hashset<>(); //hashset容器中只能存储不重复的对象 while(set.size()<count){ //hashset储存的元素数目 int x = random.nextint(max-min+1)+min; //产生随机数 set.add(x); //把随机数添加到hashset容器中 } for(int i:set){ //foreach遍历容器元素 system.out.println(i); } } }
每一秒产生90-100的重复的随机数:
import java.util.random; import java.util.timer; import java.util.timertask; public class randomtest { void timer(){ timer timer = new timer(); //创建定时对象 timer.schedule(new timertask() { public void run() { //timertask实现 runnable接口的run方法 random random = new random(); int x = random.nextint(100-90+1)+90; //(max-min+1)+min=min至max // int x=random.nextint(100)%(100-90+1) + 90; //同样的效果 system.out.println(x); } },0,1000); //0表示无延迟,1000ms=1s } public static void main(string[] args){ randomtest ran=new randomtest(); ran.timer(); //调用定时任务 } }
本文转载于:
推荐阅读