Randomizer : Random « Development Class « Java

Java
1. 2D Graphics GUI
2. 3D
3. Advanced Graphics
4. Ant
5. Apache Common
6. Chart
7. Class
8. Collections Data Structure
9. Data Type
10. Database SQL JDBC
11. Design Pattern
12. Development Class
13. Email
14. Event
15. File Input Output
16. Game
17. Generics
18. Hibernate
19. I18N
20. J2EE
21. J2ME
22. JDK 6
23. JSP
24. JSTL
25. Language Basics
26. Network Protocol
27. PDF RTF
28. Reflection
29. Regular Expressions
30. Scripting
31. Security
32. Servlets
33. Spring
34. Swing Components
35. Swing JFC
36. SWT JFace Eclipse
37. Threads
38. Tiny Application
39. Velocity
40. Web Services SOA
41. XML
Java Tutorial
Java Source Code / Java Documentation
Java Open Source
Jar File Download
Java Articles
Java Products
Java by API
C# / C Sharp
C# / CSharp Tutorial
ASP.Net
JavaScript DHTML
JavaScript Tutorial
JavaScript Reference
HTML / CSS
HTML CSS Reference
C / ANSI-C
C Tutorial
C++
C++ Tutorial
PHP
Python
SQL Server / T-SQL
SQL Server / T-SQL Tutorial
Oracle PL / SQL
Oracle PL/SQL Tutorial
PostgreSQL
SQL / MySQL
MySQL Tutorial
VB.Net
VB.Net Tutorial
Flash / Flex / ActionScript
VBA / Excel / Access / Word
Microsoft Office PowerPoint 2007 Tutorial
Microsoft Office Excel 2007 Tutorial
Microsoft Office Word 2007 Tutorial
Java » Development Class » RandomScreenshots 
Randomizer

/*
 * 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.
 */

/**
 * 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 (floatMath.abs((floatseed / (floatm);
  }

  /**
   * 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 void main(String[] args) {
      Randomizer r = new Randomizer((intnew java.util.Date().getTime());
      for (int i = 0; i < 10; i++)
        System.out.println(r.randomInt(100));

  }
}
           
       
Related examples in the same category
1. Does Math.random() produce 0.0 and 1.0
2. nextDouble() and nextGaussian() in java.util.Random
3. Generating random numbers
4. Generate random ints by asking Random() for
5. Getting random numbers: nextGaussian
6. Next double and next int
7. Math.random
ww_w_._j__a__v_a2___s.__c_om_ | Contact Us
Copyright 2003 - 08 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.