⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 randomizer.java

📁 java 的164个例子的源代码,包括了 很多方面,供包括了19个方面的 源代码
💻 JAVA
字号:
/* * Copyright (c) 2000 David Flanagan.  All rights reserved. * This code is from the book Java Examples in a Nutshell, 2nd Edition. * It is provided AS-IS, WITHOUT ANY WARRANTY either expressed or implied. * You may study, use, and modify it for any non-commercial purpose. * You may distribute it non-commercially as long as you retain this notice. * For a commercial use license, or to purchase the book (recommended), * visit http://www.davidflanagan.com/javaexamples2. */package com.davidflanagan.examples.classes;/** * This class defines methods for computing pseudo-random numbers, and defines * the state variable that needs to be maintained for use by those methods. **/public class Randomizer {    // Carefully chosen constants from the book "Numerical Recipes in C".    // All "static final" fields are constants.    static final int m = 233280;    static final int a = 9301;    static final int c = 49297;    // The state variable maintained by each Randomizer instance    int seed = 1;        /**      * The constructor for the Randomizer() class.  It must be passed some     * arbitrary initial value or "seed" for its pseudo-randomness.     **/    public Randomizer(int seed) { this.seed = seed; }        /**     * This method computes a pseudo-random number between 0 and 1 using a very     * simple algorithm.  Math.random() and java.util.Random are actually a lot     * better at computing randomness.     **/    public float randomFloat() {        seed = (seed * a + c) % m;        return (float) Math.abs((float)seed/(float)m);    }        /**      * This method computes a pseudo-random integer between 0 and specified     * maximum.  It uses randomFloat() above.     **/    public int randomInt(int max) {        return Math.round(max * randomFloat());    }        /**     * This nested class is a simple test program: it prints 10 random ints.     * Note how the Randomizer object is seeded using the current time.     **/    public static class Test {        public static void main(String[] args) {            Randomizer r = new Randomizer((int)new java.util.Date().getTime());            for(int i = 0; i < 10; i++) System.out.println(r.randomInt(100));        }    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -