HiveBrain v1.2.0
Get Started
← Back to all entries
patternjavaCritical

Getting random numbers in Java

Submitted by: @import:stackoverflow-api··
0
Viewed 0 times
randomnumbersgettingjava

Problem

I would like to get a random value between 1 to 50 in Java.

How may I do that with the help of Math.random();?

How do I bound the values that Math.random() returns?

Solution

The first solution is to use the java.util.Random class:

import java.util.Random;

Random rand = new Random();

// Obtain a number between [0 - 49].
int n = rand.nextInt(50);

// Add 1 to the result to get a number from the required range
// (i.e., [1 - 50]).
n += 1;


Another solution is using Math.random():

double random = Math.random() * 49 + 1;


or

int random = (int)(Math.random() * 50 + 1);

Code Snippets

import java.util.Random;

Random rand = new Random();

// Obtain a number between [0 - 49].
int n = rand.nextInt(50);

// Add 1 to the result to get a number from the required range
// (i.e., [1 - 50]).
n += 1;
double random = Math.random() * 49 + 1;
int random = (int)(Math.random() * 50 + 1);

Context

Stack Overflow Q#5887709, score: 898

Revisions (0)

No revisions yet.