这篇文章是在网络上的文章内容摘要学习以及自己的小练习,感谢您的无私分享。

昨天在项目中想使用几个随机数。结果使用Random时竟然出现随机数同样的情况。忍不住查了些资料。

现将代码总结例如以下:

package SE;

import java.util.Random;

public class RandomUnit {

	/**
*
* <p>
* 无种子參数的构造方法使用一个和当前系统时间相应的相对时间有关的数字作为种子数。
* 然后使用这个种子数构造Random对象。
* </p>
* @author zhangjunshuai
* @date 2014-10-28 上午11:07:53
*/
static void randomNull(){
for (int i = 0; i < 100; i++) {
Random r = new Random();
System.out.println("无种子參数:"+r.nextInt());
}
}
/**
* <p>
* 在种子參数是同一个数字的时候。出现仅仅有一个随机数的情况
* </p>
* @author zhangjunshuai
* @date 2014-10-28 上午11:18:17
*/
static void randomHave(){
for (int i = 0; i < 100; i++) {
Random r = new Random(37);
System.out.println("有种子參数:"+r.nextInt());
}
} /**
*
* <p>
* 注意random调用方法的顺序变化之后,产生的随机值才会变
* </p>
* @author zhangjunshuai
* @date 2014-10-27 下午6:54:17
*/
static void random(){
Random r = new Random(47);
System.out.println(r.nextInt());
System.out.println(r.nextBoolean());
Random w= new Random(47);
System.out.println(w.nextInt());
System.out.println(w.nextBoolean());
Random h= new Random(47);
System.out.println(h.nextFloat());
System.out.println(h.nextInt()); System.out.println(h.nextBoolean());
}
/**
*
* <p>
* 利用setSeed方法实现伪随机数
* </p>
* @author zhangjunshuai
* @date 2014-10-28 上午11:29:02
*/
static void setSeed(){
Random r = new Random();
for (int i = 0; i < 100; i++) { System.out.println("有种子參数:"+r.nextInt(270));
r.setSeed((long)r.nextLong());
}
}
/**
* <p>
* </p>
* @author zhangjunshuai
* @date 2014-10-28 上午10:56:48
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub //randomNull();
//randomHave();
//random();
setSeed(); } }

參考:

http://lehsyh.iteye.com/blog/646658

版权声明:本文博主原创文章,博客,未经同意不得转载。

Java SE学问Random的更多相关文章

  1. Java SE教程

    第0讲 开山篇 读前介绍:本文中如下文本格式是超链接,可以点击跳转 >>超链接<< 我的学习目标:基础要坚如磐石   代码要十份规范   笔记要认真详实 一.java内容介绍 ...

  2. Java SE —— 专栏总集篇

    前言: Java 语言,是相对于其他语言而言,门槛低,而且功能还强大的一门编程语言,本人十分看好这一门语言,但是,它也是有深度的,看过本人的<数据结构与算法>专栏的同学们有福了,因为本人在 ...

  3. Java SE 8 新增特性

    Java SE 8 新增特性 作者:Grey 原文地址: Java SE 8 新增特性 源码 源仓库: Github:java_new_features 镜像仓库: GitCode:java_new_ ...

  4. Java SE 12 新增特性

    Java SE 12 新增特性 作者:Grey 原文地址:Java SE 12 新增特性 源码 源仓库: Github:java_new_features 镜像仓库: GitCode:java_new ...

  5. Java SE 17 新增特性

    Java SE 17 新增特性 作者:Grey 原文地址:Java SE 17 新增特性 源码 源仓库: Github:java_new_features 镜像仓库: GitCode:java_new ...

  6. Using Headless Mode in the Java SE Platform--转

    原文地址: By Artem Ananiev and Alla Redko, June 2006     Articles Index This article explains how to use ...

  7. Mac下打开eclipse 始终提示 你需要安装Java SE 6 Runtime

    Mac下打开eclipse 始终提示 你需要安装Java SE 6 Runtime        周银辉 我的mac os 版本是10.9.2,  JDK配置得好好的,但打开eclipse时还是提示需 ...

  8. mac下需要安装旧 Java SE 6 才能打开程序解决办法

    今天我在mac系统下面安装myeclipse2014(myeclipse-pro-2014-GA-offline-installer-macosx.dmg)的时候,发现显示错误: 您需要安装旧 Jav ...

  9. ubuntu配置 Java SE 1.6

    今天编译android 4.0时提示如下错误:   You are attempting to build with the incorrect version of java. Your versi ...

随机推荐

  1. POJ 2406 Power Strings KMP求周期

    传送门 http://poj.org/problem?id=2406 题目就是求循环了几次. 记得如果每循环输出为1.... #include<cstdio> #include<cs ...

  2. UVA 10340 - All in All 水~

    看题传送门 Problem E All in All Input: standard input Output: standard output Time Limit: 2 seconds Memor ...

  3. 6.5 Android硬件访问服务使用反射

    1.前面的例子中App为了能够范问ILedService接口,把classes.jar导入到应用程序中,但是我们不想把classes编进apk包里面去,这样导致我们的apk程序会很大(解压缩apk会发 ...

  4. [TypeScript] Using Interfaces to Describe Types in TypeScript

    It’s easy to pass the wrong value to a function. Typescript interfaces are great because they catch ...

  5. Spark Streaming教程

      废话不说,先来个示例,有个感性认识再介绍. 这个示例来自spark自带的example,基本步骤如下: (1)使用以下命令输入流消息: $ nc -lk 9999 (2)在一个新的终端中运行Net ...

  6. Maven基础教程 分类: C_OHTERS 2015-04-10 22:53 232人阅读 评论(0) 收藏

    更多内容请参考官方文档:http://maven.apache.org/guides/index.html 官方文档很详细,基本上可以查找到一切相关的内容. 另外,快速入门可参考视频:孔浩的maven ...

  7. css3-12 transition+css或transform实现过渡动画

    css3-12 transition+css或transform实现过渡动画 一.总结 一句话总结:首先要设置hover后的效果,然后在transition里面指定执行哪些样式和执行时间为多长. 1. ...

  8. css3-10 css3中的边框样式有哪几种

    css3-10 css3中的边框样式有哪几种 一.总结 一句话总结:1.border-radius 2. box-shadow 3.border-image三种,box一种border两种 1.css ...

  9. Pandoc —— 标记语言转换工具(中文乱码问题)

    今次毕业设计,来个逼格高的,用 latex 编写.谁曾想,学院首先要收一份 word 版的.辣么多的 latex 公式如何转呀. Pandoc 是由 John MacFarlane 开发的标记语言转换 ...

  10. stm32的DMA传输一半中断

    这里本想做一个录音程序 硬件很简单: MIC(麦克风)放大滤波电路---->stm32的ADC----->DMA通道----->一个数组缓存------->通过FATFS的  ...