summaryrefslogtreecommitdiffstats
path: root/luni/src/main/java/java/util/Random.java
diff options
context:
space:
mode:
Diffstat (limited to 'luni/src/main/java/java/util/Random.java')
-rw-r--r--luni/src/main/java/java/util/Random.java22
1 files changed, 11 insertions, 11 deletions
diff --git a/luni/src/main/java/java/util/Random.java b/luni/src/main/java/java/util/Random.java
index b0a92ff..4a67244 100644
--- a/luni/src/main/java/java/util/Random.java
+++ b/luni/src/main/java/java/util/Random.java
@@ -171,18 +171,18 @@ public class Random implements Serializable {
* in the half-open range [0, n).
*/
public int nextInt(int n) {
- if (n > 0) {
- if ((n & -n) == n) {
- return (int) ((n * (long) next(31)) >> 31);
- }
- int bits, val;
- do {
- bits = next(31);
- val = bits % n;
- } while (bits - val + (n - 1) < 0);
- return val;
+ if (n <= 0) {
+ throw new IllegalArgumentException("n <= 0: " + n);
+ }
+ if ((n & -n) == n) {
+ return (int) ((n * (long) next(31)) >> 31);
}
- throw new IllegalArgumentException();
+ int bits, val;
+ do {
+ bits = next(31);
+ val = bits % n;
+ } while (bits - val + (n - 1) < 0);
+ return val;
}
/**