Emulates a dice : Random « Development Class « Java

Emulates a dice

//package org.groovymud.utils;

/* Copyright 2008 Matthew Corby-Eaglen
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. 
* You may obtain a copy of the License at
*   http://www.apache.org/licenses/LICENSE-2.0 
* Unless required by applicable law or agreed to in writing, software 
* distributed under the License is distributed on an "AS IS" BASIS,
* See the License for the specific language governing permissions and 
* limitations under the License. 
import java.util.List;
import java.util.Random;

 * Emulates a dice.
 * rolling will return a random number between (numberOfDice) and (dieMax)
 * eg
 * Dice myDice = new Dice(1, 6) // 1d6
 * myDice.roll() // random number between 1 and 6
 * myDice = new Dice(2, 10) // 2d10
 * myDice.roll() // random number between 2 and 10
 * @author matt
 * @deprecated use groovyDice
public class Dice {

  int numberOfDice;
  int dieMax;

  public Dice(int numberOfDice, int dieMax) {
    this.numberOfDice = numberOfDice;
    this.dieMax = dieMax;

  public int roll() {
    Random rnd = new Random(System.currentTimeMillis());
    return rnd.nextInt(dieMax * numberOfDice) + numberOfDice;


Related examples in the same category

1.Create random number
2.Create two random number generators with the same seed
3.Does Math.random() produce 0.0 and 1.0
4.Random numbers between 1 and 100
5.Random number between 0 AND 10
6.Random integers that range from from 0 to n
7.Random.nextInt(n) returns a distributed int value between 0 (inclusive) and n (exclusive).
8.Round Java float and double numbers using Math.round
10.nextDouble() and nextGaussian() in java.util.Random
11.Generating random numbers
12.Generate random ints by asking Random() for
13.Getting random numbers: nextGaussian
14.Generate a random array of numbers
15.Next double and next int
16.Random bytes
17.Random boolean
18.Random long type number
19.Random float type number
20.Random double type number
22.A wrapper that supports all possible Random methods via the java.lang.Math#random() method and its system-wide {@link Random} object.
23.Operations for random Strings
24.Random Util with ReentrantLock
25.A Java implementation of the MT19937 (Mersenne Twister) pseudo random number generator algorithm
27.Random: Properly synchronized and can be used in a multithreaded environment
28.A predictable random number generator.
29.Random GUID
30.A random.org seeded random generator.
31.Generates a secure random word with the given length consisting of uppercase and lowercase letters and numbers.
32.A random choice maker
33.Memory-efficient map of keys to values with list-style random-access semantics.
34.Generates a random integer inside the lo and hi interval
36.RandomGUID generates truly random GUIDs
37.A random access text file allows a text file to be accessed randomly starting at any position.
38.A garbage-free randomised quicksort
39.A linear random method based on xor shifts
40.Mersenne Twister Random
41.A GaussianHat is a random number generator that will give you numbers based on a population mean and standard deviation.
42.Randomly permutes the elements of the specified array
43.generate string consists of random characters.
44.Atomic Pseudo Random
45.Atomic Simple Random
47.Mersenne Twister
48.Mersenne Twister Fast
49.Mersenne Twister algorithm