# How to generate random numbers in Java

Hey Folks,
I am up with another Java programming tutorial. In this tutorial, we will see how to generate random numbers in Java by taking an example of a bubble sort. Although bubble sort is not the best algorithm of sorting.

So let’s begin with our tutorial. Bubble sort has a time complexity of O(n*n). So it is not considered among good sorting algorithms. It is the least used sorting algorithm among competitive programmers.

## Code to generate random numbers in Java

```import java.util.Random;
import java.util.Arrays;
import java.util.Collections;
class BubbleSort
{
public static void main(String args[])
{

Integer[] arr;
arr = new Integer;
int n =1000;
int temp,i,j,k;
for (i = 0; i < 1000; i++)
{
k=randomNumberInRange(999,9999);
arr[i]=k;
}
Arrays.sort(arr , Collections.reverseOrder());
//descending order
System.out.println("Sorted array: ");
long startTime = System.currentTimeMillis();
for (i = 0; i < n - 1; i++)
{
for (j = 0; j < n - i - 1; j++)
{
if (arr[j]>arr[j+1])
{
temp=arr[j];
arr[j]=arr[j+1];
arr[j+1]=temp;
}
}
}
long endTime   = System.currentTimeMillis();
long totalTime = endTime - startTime;
System.out.println(totalTime);

}
public static int randomNumberInRange(int min, int max)
{
Random random = new Random();
return random.nextInt((max - min) + 1) + min;
}
}

```

We first create a class named same as our file name which is BubbleSort. Under it, we create our main class. We declare an integer array of size thousand elements. So to generate random numbers in a particular range we declare a user-defined function named randomNumberInRange.

Inside the user-defined function, we create an Object named random. This function just generated a random integer between the given range. Arrays.sort function sorts them in descending order as it is the best case of this sorting algorithm.

Now let’s talk about how bubble sort works. So it follows the most basic approach which one can think of. It picks up one element and checks it with each and every element if it is greater than the elementary element. So it swaps both the elements. It recursively repeats the same until the array is sorted.

I hope you understood the code well. You can ask if you have any doubts in the comments section below.