Bathri Nathan Bathri Nathan - 28 days ago 6
Java Question

How can I get a random number between two ranges?

I need to show the numbers 1-10 in a random order. An example outpue while executing first time would be:

5,4,8,7,9,1,2,3
. An example while executing second time would be:
7,6,5,1,2,3,4,9,8


Will the following code print all date between ranges in random?

Random r = new Random();
int i1 = r.nextInt(80 - 65) + 65;

Answer

You can use the Collections.shuffle() method. (more info on this SO question)

In your example:

List<int> numbers = new ArrayList<int>();
int min = 65;
int max = 85;
for (int i = min; i <= max; i++) {
  numbers.add(i);
}
Collections.shuffle(numbers);
Comments