Updated 'Die' class.
Updated the 'Die' class by adding another constructor for test cases to it.
This commit is contained in:
@@ -1,7 +1,11 @@
|
|||||||
package pp.mdga.game;
|
package pp.mdga.game;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.Arrays;
|
||||||
|
import java.util.Iterator;
|
||||||
import java.util.random.RandomGenerator;
|
import java.util.random.RandomGenerator;
|
||||||
import java.util.random.RandomGeneratorFactory;
|
import java.util.random.RandomGeneratorFactory;
|
||||||
|
import java.util.stream.IntStream;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This class represents a simple die with the possibilities to shuffle and return the roll result.
|
* This class represents a simple die with the possibilities to shuffle and return the roll result.
|
||||||
@@ -43,6 +47,14 @@ public class Die {
|
|||||||
*/
|
*/
|
||||||
private int lastNumberOfDice;
|
private int lastNumberOfDice;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Predefined rolls for testing.
|
||||||
|
*/
|
||||||
|
private Iterator<Integer> rolls;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* If the results of the die should be locked.
|
||||||
|
*/
|
||||||
private final boolean lock;
|
private final boolean lock;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -74,6 +86,17 @@ public Die(int roll) {
|
|||||||
this.lock = true;
|
this.lock = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Constructor.
|
||||||
|
*
|
||||||
|
* @param rolls as a variable list of rolls which will be used by test cases as an Array of Integers.
|
||||||
|
*/
|
||||||
|
public Die(int... rolls) {
|
||||||
|
this.random = RandomGeneratorFactory.of("Random").create();
|
||||||
|
this.rolls = IntStream.of(rolls).iterator();
|
||||||
|
this.lock = false;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This method will be used to return a random number generated by the random attribute of Die class.
|
* This method will be used to return a random number generated by the random attribute of Die class.
|
||||||
*
|
*
|
||||||
@@ -84,6 +107,11 @@ public int shuffle() {
|
|||||||
return this.lastNumberOfDice;
|
return this.lastNumberOfDice;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (this.rolls != null && this.rolls.hasNext()) {
|
||||||
|
this.lastNumberOfDice = this.rolls.next();
|
||||||
|
return this.lastNumberOfDice;
|
||||||
|
}
|
||||||
|
|
||||||
this.lastNumberOfDice = this.random.nextInt(MAXIMUM_EYES) + 1;
|
this.lastNumberOfDice = this.random.nextInt(MAXIMUM_EYES) + 1;
|
||||||
|
|
||||||
return this.lastNumberOfDice;
|
return this.lastNumberOfDice;
|
||||||
|
|||||||
Reference in New Issue
Block a user