浅析Java随机数与定时器

 更新时间:2018年02月24日 10:34:42   作者:彬菌  
本篇文章给大家分析了Java随机数与定时器的实现原理以及代码分享,有需要的读者参考下吧。

产生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(); //调用定时任务
 } 
} 

本文转载于:https://www.idaobin.com/archives/301.html

相关文章

  • Java中四种9*9乘法表的实现方式(附代码)

    Java中四种9*9乘法表的实现方式(附代码)

    这篇文章主要介绍了Java中四种9*9乘法表的实现方式(附代码),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-11-11
  • Java编程调用微信分享功能示例

    Java编程调用微信分享功能示例

    这篇文章主要介绍了Java编程调用微信分享功能,结合实例形式分析了java微信分享功能接口的定义与调用相关操作技巧,需要的朋友可以参考下
    2017-08-08
  • java8如何根据某一属性条件快速筛选list中的集合

    java8如何根据某一属性条件快速筛选list中的集合

    这篇文章主要介绍了java8如何根据某一属性条件快速筛选list中的集合,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-01-01
  • Java面向对象基础详解

    Java面向对象基础详解

    这篇文章主要介绍了JJava面向对象的基础,文中有非常详细的代码示例,对正在学习java基础的小伙伴们有很好的帮助,需要的朋友可以参考下
    2021-10-10
  • Java全面细致讲解类与对象

    Java全面细致讲解类与对象

    类和对象是两种以计算机为载体的计算机语言的合称。对象是对客观事物的抽象,类是对对象的抽象。类是一种抽象的数据类型;变量就是可以变化的量,存储在内存中—个可以拥有在某个范围内的可变存储区域
    2022-05-05
  • SpringBoot获取Request对象的常见方法

    SpringBoot获取Request对象的常见方法

    HttpServletRequest 简称 Request,它是一个 Servlet API 提供的对象,用于获取客户端发起的 HTTP 请求信息,那么在SpringBoot中,获取 Request对象的方法有哪些呢,本文小编将给大家讲讲SpringBoot获取Request对象的常见方法
    2023-08-08
  • 你真的了解Java的多线程方法吗

    你真的了解Java的多线程方法吗

    这篇文章主要为大家详细介绍了Java的多线程方法,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2022-03-03
  • 基于Spring MVC的文件上传和下载实现方法

    基于Spring MVC的文件上传和下载实现方法

    在Web应用程序中,文件上传和下载是常见的功能,Spring MVC框架提供了方便的方式来实现这些功能,本文将介绍如何使用Spring MVC实现文件上传和下载,需要的朋友可以参考下
    2023-05-05
  • 如何使用spring ResponseEntity处理http响应

    如何使用spring ResponseEntity处理http响应

    这篇文章主要介绍了如何使用spring ResponseEntity处理http响应的操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-07-07
  • Spring Security过滤器链加载执行流程源码解析

    Spring Security过滤器链加载执行流程源码解析

    Spring Boot 对于 Spring Security 提供了自动化配置方案,可以使用更少的配置来使用 Spring Security。那么这个过滤器链是怎么加载和实现拦截的呢,对Spring Security过滤器链加载执行流程感兴趣的朋友一起看看吧
    2021-12-12

最新评论