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

昨天在项目中想使用几个随机数。结果使用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. UvaLive 6663 Count the Regions 离散化+DFS

    链接:http://vjudge.net/problem/viewProblem.action?id=49408 题意:在平面内给出若干个矩形,求出它们能将整个平面分成多少份. 思路:刚開始一眼看到认 ...

  2. 10.10 android输入系统_APP获得并处理输入事件流程

    APP对fd/InputChannel的注册过程: new WindowInputEventReceiver extends InputEventReceiver//InputEventReceive ...

  3. shiro 中的filterChainDefinitions详解(转)

    springrain使用shiro控制权限,配置filterChainDefinitions结合数据库校验权限. 我们在web.xml中配置一个全局过滤器,也就是在springrain配置的是一个sp ...

  4. [RxJS] Connection operator: multicast and connect

    We have seen how Subjects are useful for sharing an execution of an RxJS observable to multiple obse ...

  5. [AngularFire2] Pagination

    Let's see how to do pagination in Firebase: For the init loading, we only want 3 items: findLessonsK ...

  6. Python爬虫之路——简单的网页抓图

    转载自我自己的博客:http://www.mylonly.com/archives/1401.html 用Python的urllib2库和HTMLParser库写了一个简单的抓图脚本.主要抓的是htt ...

  7. stm32的dac

  8. C语言实现字符串截取函数left、mid和right

    作者:iamlaosong C语言字符串截取须要自己编程实现,只是.网络时代,自然不用自己从头写了.网上各种方法的实现代码已经多如牛毛了,这儿抄录一个感觉不错的备案. #include <std ...

  9. ios开发多线程一:了解-NSOperation的基本使用

    #import "ViewController.h" @interface ViewController () @end @implementation ViewControlle ...

  10. ios开发事件处理之:三 :寻找最合适的view

    1:事件的产生与传递: 2:寻找最合适的view:如何查找最合适的view:需要三步:1:先判断自身是否能接受触摸事件 2:判断触摸点是否在自己身上 3:若前两条都满足,则其会从后往前遍历所有子控件( ...