简单介绍

Java中存在着两种Random函数

一、java.lang.Math.Random;

调用这个Math.Random()函数能够返回带正号的double值,该值大于等于0.0且小于1.0,即取值范围是[0.0,1.0)的左闭右开区间,返回值是一个伪随机选择的数,在该范围内(近似)均匀分布。

二、java.util.Random

Random()的两种构造方法:

1、Random():创建一个新的随机数生成器。

2、Random(long seed):使用单个 long 种子创建一个新的随机数生成器。

我们可以在构造Random对象的时候指定种子(这里指定种子有何作用,请接着往下看)

如:Random r1 = new Random(20);或者默认当前系统时间的毫秒数作为种子数:Random r1 = new Random();

需要说明的是:你在创建一个Random对象的时候可以给定任意一个合法的种子数,种子数只是随机算法的起源数字,和生成的随机数的区间没有任何关系。

Java产生随机数需要有一个基值seed,在第一种方法中基值缺省,则将系统时间作为seed。

普通方法:

1、public synonronized void setSeed(long seed) 该方法是设定基值seed。

2、public int nextInt() 该方法是产生一个整型随机数。

3、public long nextLong() 该方法是产生一个long型随机数。

4、public float nextFloat() 该方法是产生一个Float型随机数。

6、public double nextDouble() 该方法是产生一个Double型随机数。

7、public synchronized double nextGoussian() 该方法是产生一个double型的Goussian随机数。

案列:

packagecom.wbg;import java.lang.*;importjava.util.Random;public classRandomApp {public static voidmain(String args[]) {

Random ran1= newRandom();

Random ran2= new Random(12345);//创建了两个类Random的对象。

System.out.println("The 1st set of random numbers:");

System.out.println(" Integer:" +ran1.nextInt());

System.out.println(" Long:" +ran1.nextLong());

System.out.println(" Float:" +ran1.nextFloat());

System.out.println(" Double:" +ran1.nextDouble());

System.out.println(" Gaussian:" + ran1.nextGaussian()); //产生各种类型的随机数

for (int i = 0; i < 5; i++) {

System.out.println(ran2.nextInt()+ " ");if (i == 2)

System.out.println();//产生同种类型的不同的随机数。

}

}

}

View Code

也可以有nextFloat等等,各种基本类型都有 Math.random也可以

比如说你想要0-10之间的随机数

你可以这样写 (int)(Math.random()*10);

《JAVA产生指定范围的随机数》 产生机制: 产生Min-Max之间的数字 实现原理:

//不能设定为int,必须设定为long

Math.round(Math.random()*(Max-Min)+Min) long Temp;

//产生1000到9999的随机数

Temp=Math.round(Math.random()*8999+1000);

总结:

//第一个参数是结束数字 第二个参数是开始的数字

public static int reandom(int stop,intstat ){return (int)Math.round(Math.random()*(stat-stop)+stop);

}

java 随机生成英文名_java随机数Reandom(简单介绍)相关推荐

  1. 【PHP】PHP使用PHPExcel生成Excel表格文件(附带随机生成英文名函数)

    [PHP]PHP使用PHPExcel生成Excel表格文件(附带随机生成英文名函数) 前言 由于业务需要,我们需要从业务中汇总数据,并生成Excel文件. 思路是这样的 PHP要导出Excel表格文件 ...

  2. java 随机生成大写字母_java 生成随机大写字母,整数,小写字母

    java 个人学习碰到的一些关于随机数的问题 整合在此供大家参考 /** * 生成随机大小写字母 * @author: lyq * @date: May 16, 2014 3:26:13 PM */ ...

  3. java随机生成一个号码_Java 随机生成任意组电话号码过程解析

    需求说明 要求根据用户输入,生成相应组数的电话号码 实现思路 1.通过百度,获取对应真实世界中电话号码的头三位数 2.采用Math.random()方法,生成电话号码的后八位数 代码内容 随机生成任意 ...

  4. java随机生成六位数_java实现随机产生6位数的方法总结

    packagecom.yin.test;importjava.util.Random;importorg.junit.Test;/***@authorv_yinyl * @date 2018-11-2 ...

  5. java 随机生成简体汉字_Java代码实现随机生成汉字的方法|chu

    一.背景知识 GB 2312-80 是中国国家标准简体中文字符集,全称<信息交换用汉字编码字符集・基本集>,由中国国家标准总局发布,1981年5月1日实施.GB2312 编码通行于中国大陆 ...

  6. java随机生成中文昵称_Java 中文姓名随机生成

    项目要求产生一些模拟的中文姓名,我的想法是先产生姓氏,再随机产生名字,可以是两个字的也可以是三个字的.使用的是 GB2312实现的中文字,可自行百度"信息交换用汉字编码字符集"了解 ...

  7. java 随机生成常用汉字_Java随机生成中文汉字

    /** * 原理是从汉字区位码找到汉字.在汉字区位码中分高位与底位, 且其中简体又有繁体. * 位数越前生成的汉字繁体的机率越大. * 所以在本例中高位从171取,底位从161取, 去掉大部分的繁体和 ...

  8. java正则匹配英文句号_java正则表达式最简单 学习教程

    本大教程以一个验证手机号的表达式为例,学完本例后,基本上所有的表达式都能看懂了,但是如果想要达到上手就能写的程度,还需要多练习多测试 呀! 来看 这样一个代码 String mobilePhoneRe ...

  9. java 随机手机验证码_Java实现随机生成手机短信验证码的简单代码

    这篇文章主要介绍了Java随机生成手机短信验证码的方法,涉及Java数学运算计算随机数及字符串操作的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下 本文实例讲述了Java随机生成手机短信验证码的 ...

最新文章

  1. oracle 临时表存在哪里_openGauss魔改PG?它能兼容Oracle的数据库表吗?
  2. maven-约定优于配置
  3. zookeeper 密码_「附源码」Dubbo+Zookeeper 的 RPC 远程调用框架
  4. 实验吧 貌似有点难 伪造ip
  5. 迁移到MySQL的语法转换工具初步设计
  6. 一个月攻克托业--复旦大学考生
  7. 生活中的一些哲理名言
  8. 云栖干货回顾 | 行业顶级NoSQL成员坐阵,NoSQL数据库专场重点解析!
  9. 如何让计算机恢复显示电量,win10系统右下角电池图标不见了看不到剩余电量的还原步骤...
  10. 估值调整 - 凸性调整
  11. Qt扫盲-QSlider理论总结
  12. 工具及方法 - 查询IP信息
  13. 和菜头的独立 Blog 三十万点击量值得祝贺
  14. Elasticsearch分词器介绍
  15. 基于微信图书商城小程序系统设计与实现 开题报告
  16. linux --- 2.常用命令 , python3, django安装
  17. 海康威视摄像头 onvif 鉴权
  18. 百度地图离线开发demo-海量数据绘制
  19. 不要跑,CRC没这么难!(简单易懂的CRC原理阐述)
  20. 前端 js 将字符串类型转换成其他类型

热门文章

  1. 24点游戏---java编写
  2. 删除数组中的最后一个元素
  3. 14、弱电工程综合布线系统常用的线材及设备图文资料
  4. Android studio连接(逍遥)模拟器
  5. ✿2021NEWCTF6.1萌新赛✿MISC-all-WP
  6. 【Unity脚本】鼠标常用点击事件
  7. 网络工程师必知:网关与防火墙有什么区别?
  8. “apt-get update”命令
  9. 将灰度图与深度图合成彩图
  10. 国产系统下的DES,SM4工具,银河麒麟V10桌面系统,飞腾芯片