Java产生随机数的两种方式

Java产生随机数的两种方式 在java中,我们可以通过两种方式来获取随机数(generating a random number)一种是大家熟悉的java.lang.Math.Random()静态方法,另一种是创建java.util.Random对象。下面是两种方法的使用过程: 一.java.lang.Math.random() 在使用这一静态方法的时候,我们不需要import任何包,因为java.lang.*包是默认载入的,下面举例说面使用方法: public class RandomTest{ public static void main(String[] args){ int i=Math.random();//random()会自动产生一个0.0-1.0的双精度随机数 System.out.println(i);//输出 i=Math.random()*1000;//产生0-1000的双精度随机数 System.out.println(i); int b=(int)(Math.random()*1000);//产生0-1000的整数随机数 System.out.println(b); } } 二.创建java.util.Random对象 import java.util.random public class RandomTest{ public static void main(String[] args){ Random random=new Random();//创建random对象 int intNumber=random.nextInt();//获取一个整型数 float floatNumber=random.nextFloat();//获取一个浮点数(0-1) double doubleNumber=random.nextDouble();//获取双精度数(0-1) boolean booleanNumber=random.nextBoolean();//获取boolean数 System.out.println(“intNumber:“+intNumber); System.out.println(“floatNumber:“+floatNumber); System.out.println(“doubleNumber:“+doubleNumber); System.out.println(“booleanNumber:“+booleanNumber); } } random在产生随机数的时候使用当前的时间作为基数,我们可以同过System.currentTimeMillis()来获取这个基数。当然我们也可以指定基数: Random random=new Random(100); 同一基数所产生的随机数序列是一样的,可以用下面这一段程序进行印证: import java.util.random public class RandomTest{ public static void main(String[] args){ Random random1=new Random(100); Random random2=new Random(100); for(int i=0;i<5;i++){ System.out.print(random1.nextInt()+“\t“); System.out.println(random2.nextInt()+“\t“); System.out.println(“---------------------------------“); } } } 我们可以发现random1和random2所产生的随机数是相同的。

java 产生随机数的两种方式,Java产生随机数的两种方式相关推荐

  1. Java并发基础01. 传统线程技术中创建线程的两种方式

    传统的线程技术中有两种创建线程的方式:一是继承Thread类,并重写run()方法:二是实现Runnable接口,覆盖接口中的run()方法,并把Runnable接口的实现扔给Thread.这两种方式 ...

  2. Java面试题:synchronized和对象的访问定位的两种方式

    说一说自己对于 synchronized 关键字的理解 ? synchronized关键字解决的是多个线程之间访问资源的同步性,synchronized关键字可以保证被它修饰的方法或者 代码块在任意时 ...

  3. java native函数库_Java 层调用 Native 层函数的两种方式

    概述 Java 层如何调用Native层函数,大家都应该知道使用JNI(Java 本地接口). 通过在java层声明native方法,然后遵守JNI规范命名Native函数,即可建立Java层nati ...

  4. java代码实现:12个高矮不同的人,排成两排,每排必须是从矮到高排列,而且第二排比对应的第一排的人高,问排列方式有多少种?...

    此题参考与其他人思路, 2个解题方式. 1. 1 /** 2 * 用java代码实现:12个高矮不同的人,排成两排,每排必须是从矮到高排列,而且第二排比对应的第一排的人高,问排列方式有多少种? 3 * ...

  5. ubuntu 安装java jdk_「ubuntu安装jdk」Ubuntu安装jdk8的两种方式 - seo实验室

    ubuntu安装jdk 安装方式: 1):通过ppa(源) 方式安装. 2):通过官网安装包安装.JDK官网下载地址 一:使用ppa(源)方式安装: 1):添加ppa源sudo add-apt-rep ...

  6. 图像抖动(加入随机噪声+矩阵有序抖动)Java实现,不使用OpenCV 按照课堂中讲的两种抖动(Dithering)方法,自己编程实现(编程语言不限)。实现方法一:以加入随机噪声的方式保留信息

    下面这个题我做了好久,老师说用不到OpenCV,所以我觉得应该用编程读取文件的操作,但我又不知道用C++或者Java如何读取图片文件,所以这里对于我来说是一个问题,当我发现读取文件之后,我又不知道怎么 ...

  7. java实现多线程抢单_来聊一聊3种实现JAVA多线程的方式吧

    在Java中,实现多线程的方式有3种,分别是继承Thread类.实现Runnable接口.实现Callable接口.关于它们是如何实现,有何区别呢? 方式一:继承Thread类 一个普通类只要继承了传 ...

  8. java 生成随机数_不会生成随机数?我们来看看java生成随机数的10种方法

    1.引言 本文将探讨用 Java 生成随机数的不同方法. 2.Java API Java API 提供了几种随机数生成方法.让我们一起来了解一下. 2.1.java.lang.Math Math 类中 ...

  9. 计算 java_两种计算Java对象大小的方法(转)

    原文:http://blog.csdn.net/iter_zc/article/details/41822719 另一篇类似文章:http://www.cnblogs.com/magialmoon/p ...

最新文章

  1. python opencv视频处理教程_OpenCV+Python详细教程-图片+视频(一)-Go语言中文社区...
  2. Django框架深入了解_05 (Django中的缓存、Django解决跨域流程(非简单请求,简单请求)、自动生成接口文档)(二)
  3. 【columnstore】mariadb columnstore 数据迁移
  4. java 浅堆 深堆_JVM中的一个小知识点:深堆和浅堆的概念
  5. 关于在Mac上启动了模拟器/连接了手机之后。adb device一直提示List of devices attached的问题...
  6. vue中的循环v-for
  7. springboot读取properties(yml)的几种常用方式
  8. OpenNebula概述
  9. 熊逸《唐诗50讲》聚散篇 - 学习笔记与感想
  10. activerecord java_GitHub - redraiment/jactiverecord: 实现自己的ORM还是有价值的
  11. MASR语音识别算法简介
  12. 心疼果粉,10V、4A,荣耀Magic2超级快充充电头正式曝光厉害了
  13. Kalilinux2017.2安装搜狗拼音输入法
  14. JPEG压缩算法详解(转载)
  15. Stm32完整安装包,包含Keil5,野火大学堂,Flymcu,Ch340,stm32F1和F4的器件支持包,STM32CubeMX
  16. WIFI------------QOS 理解:
  17. 2015年5月产品设计学习与思考
  18. (十)系统集成中级-进度管理
  19. 阿斯汤加瑜伽(Ashtanga Yoga)第一序列学习与实践笔记(六)
  20. [selenium爬知乎热榜

热门文章

  1. BW2400GA 介绍
  2. 全局变量和局部变量初始化问题
  3. cpython gil,CPython的线程与GIL
  4. Lerx开源网站内容管理系统(CMS) v6.5 以Java+MySQL进行开发的内容管理系统源码
  5. android6.0小米note标配版
  6. echarts 地图添加纹理贴图
  7. 老程序员教你如何提高开发效率、成为大神6——程序的本质
  8. docker安装mysql,设置mysql初始密码
  9. 手机续航测试 软件,7部手机续航测试:iPhoneXS第三谷歌第四第一当之无愧
  10. 【- Flutter Web篇 -】 FlutterUnit web版闪亮登场 ,android网络层框架设计实战